1
只是要清楚 - 這個問題不是關於流利NHibernate。代碼的雙向NHibernate映射
我有一個Parent
和Child
類,它們之間有一對多的關係。
代碼縮短以提高可讀性。
public class Child
{
int Id;
string Name;
}
public class Parent
{
int Id;
string Name;
Iesi.Collections.Generic.ISet<Child> Children;
}
public ChildMapping()
{
Table("Children");
Id(p => p.Id, m => {
m.Column("Id");
m.Generator(Generators.Identity);
});
Property(p => p.Name, m => {
m.Column("Name");
m.NotNullable(true);
});
}
public ParentMapping()
{
Table("Parents");
Id(p => p.Id, m => {
m.Column("Id");
m.Generator(Generators.Identity);
});
Property(p => p.Name, m => {
m.Column("Name");
m.NotNullable(true);
});
Set(p => p.Children, m => {
m.Cascade(Cascade.All | Cascade.DeleteOrphans);
m.Key(k => {
k.Column("ParentId");
k.NotNullable(true);
});
}, a => a.OneToMany());
}
的Child
類需要就可以了Parent
屬性。 Parent
需要控制關係(我不能在Parent
的末尾設置Inverse
到true
)。
Parent
和Child
映射應該如何映射?
你可能會發現這個系列的博客文章有用;它實際上是我能找到的映射代碼的唯一文檔。 http://notherdev.blogspot.co.il/2012/02/nhibernates-mapping-by-code-summary.html –
謝謝。這也是我找到的唯一文檔,但對我沒有多大幫助。如果我設法解決這個問題,我會自己回答這個問題:) –
好吧,父映射似乎沒問題,難道你不需要在兒童端使用「多對一」,就是這樣嗎? –