私はそのようなクラス構造を持っています:
public class Customer{
public AgreementDetails Agreement { get; set; }
}
[ComplexType]
public class AgreementDetails{
public int SalesPersonId { get; set; }
[ForeignKey("SalesPersonId")]
[NotMapped]
public virtual SalesPerson Sales { get; set; }
}
public class SalesPerson
{
...
}
顧客のリストを表示しているときに、営業担当者の詳細を表示するために Sales プロパティを呼び出していますが、プロパティは null です。通常、プロパティをナビゲートするには、.Include メソッドの使用を避けることができますが、私の場合は機能しないため、クエリは
List<Customer> res = db.Customers.Include(c=>c.Agreement.Sales).ToList();
例外は次のとおりです。
指定されたインクルード パスが無効です。EntityType 'CodeFirstNamespace.Customer' は、'Agreement' という名前のナビゲーション プロパティを宣言していません。