2016-11-25 1 views
0

사이에 2 개 개의 다른 목록을 비교 나는이 같은 XElement를 목록을 가지고 XElement 목록을 으로 지정하면 CoList에 x가없는 항목이에서 제외됩니까?목록 <XElement> 및 목록 <String>

For example, if x contains { a, b, c, d} and CoList contains { a, c, d}, how can i return a new x that contains { a, c, d} ?

간단한 방법이 있나요? TKS

+0

의 요지이다. X에 표시되지만 CoList에는 표시되지 않는 요소를 * 제외하려고한다고했습니다. 그래서 X가'{a, b, c, d}'이고 CoList가'{a, c, d}'이면'b'를 제외시키고 싶습니다. 그러나 예제 결과'{a, b, d} '에'b'가 나타납니다. '{a, c, d} '라고하셨습니까? –

+0

네, Brian입니다. Tks와 나는 위의 예를 변경했다. 최종 출력으로 {a, c, d}를 의미합니다. – Trowa

+0

안녕하세요, Brian, XElementEqualityComparer 메소드에 관한 의견을 게시했지만 댓글이 삭제되었습니다. 목록에 1000 개 이상의 항목이 포함되어있는 경우 XElementEqualityComparer 메서드가 효율적일 지 궁금하십니까? Tks – Trowa

답변

1

당신은 더 정교한 방법으로 문자열로 y로 변환 할 수 있지만이는 내가 당신의 예를 이해하지 못하는

var newList = x.Where(y => CoList.Contians(y.ToString())); 
+0

목록 x1 = x.Where (y => CoList.Contains (y.Elements ("column") .AntAt (0) .Value)); 하지만 오류가 발생했습니다. 'System.Collections.Generic.IEnumerable '형식을 'System.Collections.Generic.List '형식으로 암시 적으로 변환 할 수 없습니다. . 명시 적 변환이 존재합니다 (캐스트가 누락 되었습니까?) 어떻게 해결합니까? – Trowa

+0

.ToList를 추가하여 해결했습니다. (); 위의 코드 끝. – Trowa

+0

@Trowa는 문제를 해결 한 경우 이것을 정답으로 표시 할 수 있습니다. – Danny