这是我的模型设计:
App==>> List<promoCode> PromoCodes
应用程序可以有许多promoCode。 这是映射:
public class AppMap
{
HasMany(x => x.PromoCodes).Cascade.AllDeleteOrphan();
}
public class PromoCodeMap
{
Map(x => x.Code);
Map(x => x.AccessDate);
}
promoCode没有任何对其父级的引用我不需要它,它不应该。
但是当我尝试删除App的促销代码时,我收到了错误:Row was updated or deleted by another transaction
指的是数据库中的促销代码。
以下是我清除和添加新promoCodes的方法:
public virtual void AddPromoCodes(IList<string> appPromoCodes)
{
this.promoCodes.Clear();
foreach (string promoCode in appPromoCodes)
{
PromoCode prc = new PromoCode();
prc.Code = promoCode;
this.promoCodes.Add(prc);
}
}
有谁知道这里有什么不对吗?我只想删除旧代码并分配新代码! 我按照请求使用会话,但我没有任何线程。