我正在编写一个应用程序,并开始测试我的领域模型实体。如果我创建一个像这样var company = new Company(“my company”)的实体公司实例;我应该得到一个有效的实体,这意味着公司此时应该有一个Id是否正确?NHibernate应该为实体分配id还是应该由应用程序处理?
所以问题是,在那一刻我有一个HBM文件中像这样定义的ID生成的DB提出:编写单元测试的时候,因为我没有带实体做
<id name="ObjectIdentity" column="CompanyId" type="System.Guid" unsaved-value="00000000-0000-0000-0000-000000000000">
<generator class="guid.comb"/>
</id>
这会导致一个问题有一个Id,因为它在测试中没有碰到db,又叫我有一个无效的实体。
现在我应该在应用程序中分配Id,而不是让nhibernate负责这个或者这是错误的做法吗?
实体如何无效有一个ID?你想要测试什么? – 2009-11-04 01:50:58