当保存我的多对多相关实体时,实体保存正常。但是,连接表保持为空:
产品端映射(ProductMap.cs)
HasManyToMany(x => x.Pictures)
.Table("Product_Picture")
.ParentKeyColumn("Product")
.ChildKeyColumn("Picture")
.Cascade.All()
.Inverse()这将生成以下xml:
<bag cascade="all" name="Pictures" table="Product_Picture">
<key>
<column name="Product" />
</key>
<many-to-many class="...Picture...">
<column name="Picture" />
</many-to-many>
</bag>图片端映射(PictureMap.cs)
HasManyToMany(x => x.Products)
.Table("Product_Picture")
.ParentKeyColumn("Picture")
.ChildKeyColumn("Product")
.Cascade.All();这将生成以下xml:
<bag inverse="true" cascade="all" name="Products" table="Product_Picture">
<key>
<column name="Picture" />
</key>
<many-to-many class="...Product...">
<column name="Product" />
</many-to-many>
</bag>有什么想法吗?
发布于 2010-05-28 21:59:11
您必须确保向Picture对象上的集合中添加内容,该对象是尚未声明为Inverse()的关系的方向。添加到关系的另一端将不会导致它们持续存在。
如果您正在执行此操作,或者正在向两端添加对象,则请在您正在操作并尝试保存这些对象的位置发布一些代码。
https://stackoverflow.com/questions/2929583
复制相似问题