linq to sql を使用して 3 つの ef オブジェクトのクエリを強く入力しようとしています。製品とカテゴリには 1 対多の関係があります。私のクラスにはナビゲーション プロパティが含まれており、次のようになります。
public partial class Product
{
public int ID {get;set;}
public string Name {get;set;}
public virtual ICollection<Group> NpGroup {get;set;}
}
public partial class Category
{
public int ID {get;set;}
public string Name {get;set;}
public virtual ICollection<Group> NpGroup {get;set;}
}
public partial class Group
{
public int ID {get;set;}
public int ProductID {get;set;}
public int CategoryID {get;set;}
public virtual Product NpProduct {get;set;}
public virtual Category NpCategory {get;set;}
}
文字列ベースの .Include() を回避しようとすると、ProductID "1" に等しいグループを返すだけでなく、製品とカテゴリの名前も含むクエリを作成するにはどうすればよいですか?
何かのようなもの:
var context = ObjectContext.CurrentObjectContext;
var query = from c in context.Group
where c.ProductID == 1
//Include the names of the product and category of the group record (c.NpProduct.Name etc.)
select c;
私はおそらく森の中の木を見逃していますが、ObjectContext.LoadProperty の構文を取得できないようです (それが正しい方法である場合)。
何かご意見は?ありがとう。