ADO.NET Entity Frameworkと1:*関係のトラブルシューティング

StackOverflow https://stackoverflow.com/questions/807872

  •  03-07-2019
  •  | 
  •  

質問

1:*関係の2つのテーブルを持つデータベースを作成するという簡単なタスクを達成しようとしています。

1つのテーブル(フーズ)にある

Id
...
...

もう1つ(バー)には

Id
FooId
...
...
...

Foriegn Key TableがFooId列を指すバーであり、Primary KeyテーブルがFodがId列を指すように、BarsからFoosへの外部キー関係を作成しました。

次にADO.NET Entityデータモデルを作成し、FoosおよびBarsテーブルとリレーションシップを適切に選択し、ナビゲーションプロパティを作成しました。

今、MVCアプリケーション内から次のようなFooを取得しようとしています:

var foo = (from f in _db.Foos where f.Id == id select f).FirstOrDefault();

その後、fooオブジェクトのBarsプロパティにアクセスしようとして、結果が得られません。 ただし、_db.Barsセットを調べると、FooIdが正しいIDに設定されたバーが表示されます。

関係が機能しない理由をトラブルシューティングするにはどうすればよいですか?テーブルの関係については、MSDNの多くのチュートリアルとドキュメントを参照しましたが、明らかに間違っているものはありません。

関連する場合に、ASP.NET MVCアプリケーションでこれを使用しようとしています。

役に立ちましたか?

解決

Foosテーブルでインクルードを使用する

var foo =(_db.Foos.Include(" Bars")のfからf.Id == id select f).FirstOrDefault();

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top