用流利的NH来映射视图吗?

时间:2011-06-07 00:32:03

标签: nhibernate fluent-nhibernate nhibernate-mapping

在流利的NH中有什么方法可以将[查看]映射到c#类?我需要让它们只读。

3 个答案:

答案 0 :(得分:6)

NHibernate允许您像表一样映射视图。它完全一样。你唯一不能做的就是更新它。

答案 1 :(得分:2)

NHibernate不知道您指定为“table”的对象实际上是表还是视图。

如果你不打算给他们写信,那就没什么可担心的。

答案 2 :(得分:2)

如其他答案中所述,您可以使用与表格完全相同的方式映射视图。我会将它们配置为只读,以便在您的应用程序中捕获非允许的插入,而不是从数据库返回错误:

public class MyViewMapping : ClassMap<MyViewType>
{
    public MyViewMapping()
    {
        Table("VIEW_NAME");

        ReadOnly();

        // Add all view fields here...
        Map(x => x.Field1, "Field1Name");
    }
}