WPF에서 제품 편집 양식을 만들고 있습니다. 이 양식에는 Id
, Code
, Width
, Height
및 Color
의 텍스트 상자가 있습니다.람다 식 더블 필터
Id
및 Code
는 반복 할 수 없습니다, 그래서 난 내 Code_TextChanged
이벤트에서 "확인"에 대한 Code
반복을합니다.
나는 검사에 대해 다음 람다 식을 시도했다 :
// List<Product> products = …;
if (products.Where(x => x.code.Equals(Code.Text))
.Count(g => !g.id.Equals(Id.Text)) > 0)
CodeExist = true;
내가 레지스터를 열 때, 그것은 참으로 CodeExist
을 표시합니다, 이유를 알고하지 않습니다.
필터의 조건을 만드는 방법은 product.code.Equals(Code.Text)
과 !product.id(Id.Text)
입니까?
오프 주제 : ** 1. **'items.Count (...)> 0' 대신'items.Any (...) '를 사용하십시오. 정확한 계산을 계산할 필요가 없기 때문에 더 잘 수행 할 수 있습니다. ** 2. ** 당신의 람다 함수의 매개 변수 이름에 관해서, 당신이'x'와'g'를 선택한 이유는 궁금 해서요. 단지'p' (또는'product')뿐만 아니라, 'products' 컬렉션. ** 더블 필터 ('.Where')를 원한다면, 쿼리에서 두 개의'.Where'를 간단히 연결하는 명백한 솔루션에서 당신을 막지는 못했을 것입니다. 최적 솔루션). – stakx