zoukankan      html  css  js  c++  java
  • NHibernate 操作视图 第十三篇

      在NHibernate中,可以把视图当表一样操作,只需要记住一点就是,视图是只读的,因此映射实体的setter应该改为protected。

      新建一个视图如下:

      

      持久化类:

        public class CountryPersonModel
        {
            public virtual int PersonId { get; protected set; }
            public virtual string PersonName { get; protected set; }
            public virtual string CountryName { get; protected set; }
        }

      映射文件:

    <?xml version="1.0" encoding="utf-8" ?>
    <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
      <class name="Model.CountryPersonModel,Model" table="Country_Person_View">
        <id name="PersonId" column="PersonId" type="Int32">
          <generator  class="native"/>
        </id>
        <property name="PersonName" column="PersonName" type="String"/>
        <property name="CountryName" column="CountryName" type="String"/>
      </class>
    </hibernate-mapping>

      操作实例:

            static void Main(string[] args)
            {
                ISessionFactory sessionFactory = new Configuration().Configure().BuildSessionFactory();
                using (ISession session = sessionFactory.OpenSession())
                {
                    IList<CountryPersonModel> ListCP = session.Query<CountryPersonModel>().ToList();
                    foreach (CountryPersonModel cp in ListCP)
                    {
                        Console.WriteLine(cp.PersonId + ":" + cp.PersonName + ":" + cp.CountryName);
                    }
                }
    
                Console.ReadKey();
            }

      输出:

      

      感觉这篇文章有点多余,因为操作视图非常简单,可以当普通表一样操作。

  • 相关阅读:
    fiddler工具窗口功能介绍
    Fiddler导出jmx格式实现方法
    Fiddler抓包时一直请求:http://clients1.google.com:443
    内置函数的使用
    python中操作excel、ddt、config、logging方法
    Pycharm 将代码上传到GitHub
    unittest框架-优化一【变量参数化】
    excel的读取
    ddt数据驱动
    selenium中的js和jquery的相关用法
  • 原文地址:https://www.cnblogs.com/kissdodog/p/3330913.html
Copyright © 2011-2022 走看看