1

データベースに3つのテーブルがあり、データベースからエンティティモデルを作成しましたが、次のようになります。 代替テキスト

私がやろうとしていることは、3つのテーブルすべてをdatagridviewにバインドし、次のようなクエリを使用することです。

var result = from t in db.Transactions
                    from c in db.Categories
                    from a in db.Accounts
                    where t.FkCategoryID == c.CategoryID && t.FkAccountID == a.AccountID
                    select new { t.Description, t.BankReference, t.TransactionDate, c.CategoryName, a.AccountName, a.AccountNr };

これはうまく機能します。ただし、バインディングナビゲータツールバーを使用してトランザクションテーブルを更新できる必要があります

代替テキスト

linqクエリを使用してそれをgridviewにバインドすることによってそれを行うことはできません。

エンティティフレームワークを使用してそれを達成する方法はありますか?つまり、1つのテーブルのみをバインディングソースにバインドすると、そのツールバーを使用して更新を削除し、行を追加できますが、すべてのテーブルを表示する必要があり、トランザクションテーブルのみを編集できます。

前もって感謝します

4

2 に答える 2

0

エンティティではなく匿名タイプを選択しているため、これは不可能だと思います。したがって、グリッド内のレコードはエンティティモデルに関連していません。レコードの削除と更新は自分で処理する必要があります。

于 2010-08-26T10:18:56.830 に答える
0

1つの提案は、クエリのデータベースビューを作成し、結合されたテーブルの代わりにそれにマップすることです。

于 2010-08-26T10:19:46.627 に答える