我还是NHibernate的新手,所以如果我错了,请纠正我。
当您使用NHibernate从数据库记录构建对象集合时,NH会负责实例化您的集合并填充它们。
在编写实际不使用NH的测试时,如何实例化ISet集合?
答案 0 :(得分:2)
您可以使用构造函数实例化字段,也可以直接在声明中实例化字段。使用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);
}
}
答案 1 :(得分:0)
假设您正在测试数据层本身以外的其他内容(例如,您的域逻辑),您可以自己创建对象并使用测试用例数据填充它们。或者你可能真的很偷偷摸摸并用你所有的测试用例创建一个数据库。