我有一个应用程序,主要对象有一个像往常一样的身份。在数据库中,ids的保存顺序增加1,如预期的那样1,2,3,4,5,6 .... N ......如预期的那样
但是当在视图中显示时,ids是不同的,如1到12,然后他们跳了一千到1012
weirdes是当我调试它并且我做Session.Query()。ToList();
ids是坏的,他们只是来自数据库,我没有映射他们或任何东西。
如果我通过id查询,则对象被正确检索。
public class BaseModel {public virtual int Id { get: set; }}
public class WorkOrder: BaseModel {}
和我的映射
<?xml version="1.0" encoding="utf-8" ?>
<id name="Id">
<generator class="identity" />
</id>
该应用程序已投入生产,我们多次创建/更新/删除多个工单,我在开发之前遇到过这些问题,但它又回来了。
是因为id是由基础模型继承的,还是Nhibernate的任何一种bug?
答案 0 :(得分:0)
标识生成器意味着数据库将生成id。我建议看看那里的列定义。