1

私は4つのクラスを持っています:

class Group
{
   int64 id;
   String name;
   GroupMembershipCollection members ;
}

class User
{
 int64 id;
 String name;
 GroupMembershipCollection groups;
}

class Role
{
 int64 id;
 String name;
}

class GroupMembership
{
  User User;
  Group Group;
 Role Role;
}

class GroupMembershipCollection : ObjectCollection<GroupMembership>
{}

私のマッピングは次のとおりです。

UserMap
{
    //other maps 
  this.HasMany<GroupMembershipCollection, GroupMembership>(p => p.Groups, cfg => cfg.Cascade.AllDeleteOrphan());    }

GroupMap
{
    //other maps
   HasMany<GroupMembershipCollection, GroupMembership>(g => g.Members, cfg => cfg.Cascade.AllDeleteOrphan());
}

GroupMemberShipMap
{
     References(x => x.User).Cascade.None();
 References(x => x.Group).Cascade.None();
 References(x => x.Role).Cascade.None();
 }

グループにメンバーを追加しようとすると、次のエラーが表示されます。

INSERT ステートメントが FOREIGN KEY 制約 "FK_GroupMemberships_UserID" と競合しました。テーブル dbo.Users で

グループをメンバーに追加しようとすると、次のようになります。

INSERT ステートメントが FOREIGN KEY 制約 "FK_GroupMemberships_GroupID" と競合しました。テーブル dbo.Groups で

助けてください...

4

0 に答える 0