我有我的數據庫中的表看大致是這樣的:如何從NHibernate的「組名」列中映射組實體類?
create table Foo (
Id int identity not null,
Name varchar(100) not null,
GroupName varchar(100) not null,
constraint PK_Foo primary key (Id)
)
現在我想這個表映射到兩個實體類是這樣的:
class Foo {
public virtual in Id { get; private set; }
public virtual string Name { get; set; }
public virtual Group Group { get; set; }
}
class FooGroup {
public virtual string Name { get; set; }
public virtual ISet<Foo> Foos { get; private set; }
}
這是可能的NHibernate的?我試圖搜索網絡和NH文檔,但我真的不知道要尋找什麼 - 對搜索查詢的想法將不勝感激。
也許我可以做一個映射FooGroup
使用自定義的HQL/SQL查詢來選擇不同的組名和另一個自定義查詢來選擇適當的一組包含的項目?
你能告訴我們更多關於你想達到的目標嗎,爲什麼你需要兩個班級? – epitka 2009-09-02 15:10:07
最初設計數據模型時,組名稱不過是名稱。後來,隨着事態的發展,看起來實際的團體現在有遵守的商業規則。例如:FooGroup應該有一個方法Bar(),它將一些神奇的業務集合函數應用於包含的Foos並返回一個整數。試圖這樣做的DDD方式,我想我可以重構字符串'GroupName到FooGroup類,並在這裏聲明的方法。這有意義嗎? – 2009-09-03 16:37:23
聽起來和我的問題類似 –
Firo
2011-08-30 14:27:23