我有一个对象
Ticket
-List<AssociatedUsers> Users
AssociatedUsers
-Ticket Ticket
我的映射如下所示:
// Ticket Map:
HasMany(t => t.Users)
.Inverse()
.Cascade.AllDeleteOrphan();
// AssociatedUsers Map:
References(u => u.Ticket).Cascade.SaveUpdate()
当我尝试从baseTicket列表中删除一个assocateduser时,我收到一条错误消息:
删除的对象将通过级联重新保存(从关联中删除已删除的对象)
我尝试了Cascades的一些变化,但我无法弄明白,我想知道为什么它不起作用而不是偶然幸运。
var user = FindAssociatedUserInTicket(userName);
user.AssertIsNotNull("No user found");
session.Delete(user);
我试过了:
ticket.RemoveUserFromList(userName); //List.Delete function for the found user
session.Save(ticket)
答案 0 :(得分:0)
为什么需要级联故障单?
// AssociatedUsers Map:
References(u => u.Ticket).Cascade.SaveUpdate()
删除级联并使用第二种方法:
Ticket.RemoveUserFromList(userName);
session.Save(ticket)