我對NHibernate還是一個新東西,所以如果我在這方面有任何問題,請糾正我。在使用NHibernate進行持久化的項目中測試數據模型
當您使用NHibernate從數據庫記錄構建對象集合時,NH負責實例化您的集合並填充它們。
在編寫實際上不使用NH的測試時,如何實例化ISet集合?
我對NHibernate還是一個新東西,所以如果我在這方面有任何問題,請糾正我。在使用NHibernate進行持久化的項目中測試數據模型
當您使用NHibernate從數據庫記錄構建對象集合時,NH負責實例化您的集合並填充它們。
在編寫實際上不使用NH的測試時,如何實例化ISet集合?
您可以通過使用構造函數或直接在聲明中實例化字段來實例化字段。用NHibernate映射的類可以是持久性無知的。
public class MyEntity
{
private readonly ISet<ChildEntity> children;
public MyEntity()
{
children = new HashedSet<ChildEntity>();
}
public IEnumerable<ChildEntity> Children
{
get { return children; }
}
public void AddChild(Child child)
{
children.Add(child);
}
}
假設你正在測試的不是數據層本身(比如你的域邏輯),你可以簡單地創建對象並用測試用例數據填充它們。或者你可能真的偷偷摸摸地創建一個包含所有測試用例的數據庫。
可以初始化現場您的收藏還有:私人只讀的ISet孩子=新HasedSet ();這樣你就不必編寫構造函數。 –
2009-11-20 21:04:55
爲什麼你的財產和字段類型有所不同? – 2009-11-20 21:13:51
@Ronnie Overby:你是什麼意思?映射? @Marek Tihkan:這是真的(請參閱編輯) – Paco 2009-11-20 22:25:26