在使用NHibernate进行持久化的项目中测试数据模型

时间:2009-11-20 20:56:22

标签: c# .net nhibernate orm persistence

我还是NHibernate的新手,所以如果我错了,请纠正我。

当您使用NHibernate从数据库记录构建对象集合时,NH会负责实例化您的集合并填充它们。

在编写实际不使用NH的测试时,如何实例化ISet集合?

2 个答案:

答案 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)

假设您正在测试数据层本身以外的其他内容(例如,您的域逻辑),您可以自己创建对象并使用测试用例数据填充它们。或者你可能真的很偷偷摸摸并用你所有的测试用例创建一个数据库。