我无法让nhibernate删除此子对象,它在不引发任何异常和不删除任何内容的情况下完成:
public void DeleteW9(int vendorId, int vendorW9Id)
{
var vendor = vendorRepository.Get(vendorId);
var W9 = vendor.W9.Where(x => x.Id == vendorW9Id).First();
vendor.W9.Remove(W9);
vendorRepository.SaveOrUpdate(vendor);
}
这是我的供应商映射:
mapping.HasMany(x => x.W9)
.KeyColumn("VendorFk")
.Cascade.AllDeleteOrphan()
.AsBag();
我的vendorw9表以vendorfk的形式包含对供应商ID的引用。我没有限制设置,是否需要设置主键关系?nHibernate除了删除孤儿外,其他功能都很好。