7
ジョインの代わりにナビゲーションプロパティを初めて使用しようとしています。私は、通常は左外部結合で行われる状況で作業することはできません。次の例では、外部キーがnull以外の場合にのみ結果を返します。私はすべての結果を戻す必要があります。私は何が欠けていますか?外部キーがNULLのEFナビゲーションプロパティ
public class User
{
[Key]
public int UserID {get;set;}
public String Name {get;set;}
}
public class Shipment
{
[Key]
public int ShipmentID {get;set;}
public int? SignedForByID {get;set;}
[ForeignKey("SignedForByID")]
public virtual User SignedForBy{get;set;}
}
ナビゲーションプロパティマッピング:
Shipment.HasOptional(x=> x.SignedForBy).WithMany()
.HasForeignKey(y=> y.SignedForByID).WillCascadeOnDelete(false);
クエリ:
var data = (from s in context.Set<Shipment>()
select new {
ShipmentID = s.ShipmentID,
SignedForBy = s.SignedForBy
});
コンテキスト変数はDbContextですか?あなたが呼んでいる 'Shipments'メソッドの実装を表示できますか? – user2697817
はい、そうです。私はこれを明確にするために投稿を編集する。それはちょうどDbSetのです – Sam
私はそれを困惑している、私はそれがうまくいかない理由を参照してください。 – user2697817