3

EntityFramework 4でMVC4とC#4.5を使用しています。

単純な多対多のテーブルを設定しました。

tblAdminUser -> tblAdminUserRole <- tblAdminRole

管理者ユーザーに役割を追加しようとすると、次のエラーが発生します。

「EntitySet'tblAdminUserRole'にはDefiningQueryがあり、現在の操作をサポートする要素が要素に存在しないため、更新できません。」

私が使用しているコードは次のとおりです。

this.Role = new tblAdminRole()
{
    Name = "__role__",
};

context.tblAdminRoles.Add(this.Role);
context.SaveChanges();

this.AdminUser.tblAdminRoles.Add(this.Role);
context.SaveChanges();
4

2 に答える 2

7

Update your database, set pair of foreign key to tables in m2m table as primary key. Then update your model to database.

于 2012-09-07T11:01:49.507 に答える
4

のすべてのIDフィールドがSQLデータベースの主キーtblAdminUserRoleとして設定されているかどうかを確認してください。次に、モデルを更新します。

Entity Frameworkが主キーを認識できない場合、ステートメントは生成されますが、それに応じたステートメントとステートメントSELECTを作成することはできません。INSERTUPDATEDELETE

于 2012-09-07T11:01:02.653 に答える