[英]Fluent NHibernate one-to-many relationship setting foreign key to null
[英]Using fluent-nhibernate, is there convention to make the foreign-key column in one-to-many relation not null?
我正在使用流暢的nhibernate約定來映射我的實體:
public class HasManyConvention : IHasManyConvention
{
public void Apply(FluentNHibernate.Conventions.Instances.IOneToManyCollectionInstance instance)
{
instance.Key.Column(instance.EntityType.Name + "ID");
instance.Cascade.AllDeleteOrphan();
}
}
所以這個約定生成以下hibernate映射:
<class xmlns="urn:nhibernate-mapping-2.2" mutable="true" name="ParentType, ParentTypeAssembly" table="ParentTable">
<id name="ParentIDID" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" unsaved-value="0">
<column name="ParentID" />
<generator class="identity" />
</id>
<bag cascade="all-delete-orphan" name="Childs" mutable="true">
<key>
<column name="ParentID" />
</key>
<one-to-many class="ChildType, ChildTypeAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</bag>
</class>
</hibernate-mapping>
如何修改約定以使子表中的ParentID不為空?
所以它看起來像這樣:
<key>
<column name="ParentID" not-null="true" />
</key>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.