2009-03-20 2 views
1

목록에있는 항목의 속성이 myItem의 속성과 같은지 확인하기 위해 List.Contains(myItem)과 비슷한 작업을 수행 할 수 있습니까?항목의 속성을 비교하여 List.Contains를 자동으로 처리 할 수 ​​있습니까?

(우리는 ContainsExists, 같은 것을 생각했다 :

 
if (orderLines.Contains(myLine)) { ... } 

을하지만, 간단한 표현을 얻을 수 없습니다.)

우리는 다음과 같은 간단한 싶습니다

 
if (orderLines.[MethodName](myLine)) 
{ 
} 

이 적어도 하나 이상의 항목 orderLines[i]이 충족되면이 메소드는 자동으로 true를 반환해야합니다.

 
myLine.Product.Equals(orderLines[i].Product) 

우리는 Product 속성에 의해 동일시 IEquatable<OrderLine>을 구현하지만, 거기에서 진행하는 방법을 찾을 수 없습니다.

답변

6

.NET 3.5를 사용하고 있습니까? 그렇다면 LINQ를 사용하십시오.

if (orderLines.Any(order => order.Product == myLine.Product)) 
{ 
    ... 
} 
관련 문제