我知道它已被多次询问,我也在这个网站上找到了很多答案,但我只是不能解决这个问题。
任何人都可以帮我解决这段代码吗?
非常感谢。
这是我的父映射文件
<set name="ProductPictureList" table="[ProductPicture]" lazy="true" order-by="DateCreated" inverse="true" cascade="all-delete-orphan" >
<key column="ProductID"/>
<one-to-many class="ProductPicture"/>
</set>
这是我的子映射文件
<class name="ProductPicture" table="[ProductPicture]" lazy="true">
<id name="ProductPictureID">
<generator class="identity" />
</id>
<property name="ProductID" type="Int32"></property>
<property name="PictureName" type="String"></property>
<property name="DateCreated" type="DateTime"></property>
</class>
这是我的c#代码
var item = _productRepository.Get(productID);
var productPictrue = item.ProductPictureList
.OfType<ProductPicture>()
.Where(x => x.ProductPictureID == productPictureID);
// reomve the finding item
var ok = item.ProductPictureList.Remove(productPictrue);
_productRepository.SaveOrUpdate(item);
ok是false值,此子对象仍在我的数据库中。
答案 0 :(得分:0)
不是100%肯定,但可能是因为您已将ProductID定义为ProductPicture的属性,我认为这是Product类中的PK。您不需要再次添加它,它将由关系创建。
答案 1 :(得分:0)