我正在尝试映射没有标识符的视图,但 nhibernate 仍然会生成带有 id 列的 sql(给我一个 sql 错误,因为 db 中不存在 ID 列)。也许我误解了 Id() 构造函数?
构造函数评论:
创建一个在域对象或数据库中没有相应属性的 Id。这主要用于只读访问和/或视图。默认为带有“增量”生成器的 int 标识。
public class PersonMapping : ClassMap<Person>
{
public PersonMapping()
{
Table("person");
ReadOnly();
Id();
Map(f => f.Name, "name");
}
}