2017-02-23 7 views
0

私はC#でエンティティフレームワーク6を使用しています。エンティティのプロパティとエンティティのICollectionでの検索

私のテーブルは次のようなものです。

public class Product 
{ 
    public Product() 
    { 
     ProductInfos = new List<ProductInfo>(); 
    } 

    ... 

    public string Name { get; set; } 

    public virtual ICollection<ProductInfo> ProductInfos { get; set; } 
} 

public class ProductInfo 
{ 
    ... 

    public long ProductId { get; set; } 

    public string Name { get; set; } 
} 

私はProduct.NameProduct.ProductInfosでテキストを検索したい - >Name
ようこそあなたが見ることができるように


        queryable = queryable.Where(x => x.Name.Contains(searchtext)) 
             .Where(p => p.ProductInfos.Where(p => p.Name.Contains(searchtext))); 

は、しかし、私の脳が停止されました:)
クラスのプロパティと子のクラスのプロパティを照会することができますどのように?

P.S.これは大きなテーブルではなく、パフォーマンスのエラーを心配しないでください。私はわずか50の製品しか持っていません。

+0

エラーは何ですか?結果は何ですか?あなたの質問をテストしましたか? – CodeNotFound

答えて

1
queryable = queryable.Where(x => x.Name.Contains(searchtext) || 
           x.ProductInfos.Any(y => y.Name.Contains(Seachtext)); 
+0

このコードスニペットは問題を解決するかもしれませんが、[説明を含む](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)は本当にあなたの投稿の質を向上させるのに役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。 –

関連する問題