ID가 잠재적으로 일치하는 ID 필드가있는 두 가지 유형의 개체가 있습니다. FindAll 작업은 일치하지 않는 올바른 개체를 반환하지만 Where 작업은 모든 개체를 반환합니다. 누군가 제가 왜 이해하는지 도울 수 있습니까?Linq FindAll 및 Where는 다른 결과를 반환합니다.
var _kenticoIDs = new HashSet<string>(_kenticoSessions.Select(p => p.AttendeeInteractiveSessionID));
var list = _aiSessionIDList.FindAll(p => !_kenticoIDs.Contains(p.SessionID));
var ienum = _aiSessionIDList.Where(p => !_kenticoIDs.Contains(p.SessionID));
EDIT : resultA 변수에서. 그러나 두 변수 (result/resultA)를 .ToList() 전에 검사 할 때 6 개의 값을 갖고 하나는 63 개의 값을가집니다. 나는 명백한 무엇인가 놓치고있는 것처럼 느낀다.
코드는 읽을 수없는 시점까지 * 끔찍하게 * 형식이 지정되어 있습니다. 고쳐주세요. –
목록에있는 항목의 ID가 '_kenticoIDs' 해시가 아닐지라도'_aiSessionIDList.Where (p =>! _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ -SessionID) '의 모든 항목을 반환한다고 말하고 있습니까? –