0

WPFで商品編集フォームを作成しています。Idこのフォームには、Code、 、WidthHeight、およびのプロパティのテキスト ボックスがありますColor

Id繰り返しできないので、イベントで繰り返しCodeの「チェック」を行いたいです。CodeCode_TextChanged

チェックのために次のラムダ式を試しました:

// List<Product> products = …;
if (products.Where(x => x.code.Equals(Code.Text))
            .Count(g => !g.id.Equals(Id.Text)) > 0)
    CodeExist = true;

CodeExistレジスターを開いたときに、なぜtrueとマークされるのかわかりません。

product.code.Equals(Code.Text)フィルターと?の条件を作成するにはどうすればよい!product.id(Id.Text)ですか?

4

1 に答える 1

3

"&&" (SQL の "AND" に相当) または "||" を使用して、複数の条件を追加できます。(これは SQL の「OR」に相当します)。

コレクション内の 1 つ以上の要素が条件に一致する場合、LINQ の "Any()" メソッドを使用して true を返すこともできます。

したがって、if ステートメントは次のようになります。

if(products.Any(x=>x.code.Equals(Code.Text) && !x.id.Equals(Id.Text))){
     CodeExists = true;
}

編集:「!」のマイナーなタイプミスを修正 配置。

于 2013-08-24T23:17:54.640 に答える