1

DbSet内のすべてのエンティティ (エントリ) を (1 つのエントリではなく)再ロードするにはどうすればよいですか?

私は2つのテーブルを持っています:

Tbl1 (Id, Name, Tel,...)
Tbl2 (Id, Address, DetailInfo,... )

および 1 つのビュー:

MyView1 (Tb1.Id , Name,Tel , Address , DetailInfo,...)

RefreshInfo() 関数を使用してグリッドのデータソースに DbSet.ToList() を設定し、1 つの Tb1 エンティティを編集してから myDbContext.SaveChanges() を呼び出します。これはデータベースで変更され、MyView1 は正しい値を表示します、RefreshInfo を呼び出すと() 繰り返しますが、データベースからの値は表示されません! 現在のエンティティをリロードでき、機能しましたが、DbSet 内のすべてのエンティティをリロードしたい

RefreshInfo() メソッドを呼び出すたびに、db から新しいデータを取得したいと考えています。(SqlProfiler で確認したところ、ef が SELECT コマンドを db に送信したことがわかりましたが、その代わりに何が起こったのでしょうか?!)

私は毎回新しいdbContextを作成したくありません .winformでdatagridviewとエンティティフレームワークコードを最初に扱っているのは良い解決策ではありません.

4

0 に答える 0