• Nhiberntae实例(操作Oracle)


    1.文件路径
    \App_Data\Entity\DEP.cs
    \App_Data\Entity\NHibernateHelper.cs(参考官方文档)
    \App_Data\Mapping\DEP.hbm.xml
    \bin\hibernate.cfg.xml
     

    2.hibernate.cfg.xml文件

    <?xml version="1.0" encoding="utf-8"?>
    <!-- 
    This template was written to work with NHibernate.Test.
    Copy the template to your NHibernate.Test project folder and rename it in hibernate.cfg.xml and change it 
    for your own use before compile tests in VisualStudio.
    -->
    <!-- This is the System.Data.OracleClient.dll provider for Oracle from MS -->
    <hibernate-configuration  xmlns="urn:nhibernate-configuration-2.2" >
      <session-factory name="NHibernate.Test">
        <property name="connection.driver_class">NHibernate.Driver.OracleClientDriver</property>
        <property name="connection.connection_string">
          User ID=kenny1;Password=123456;Data Source=orcl
        </property>
        <property name="show_sql">false</property>
        <property name="dialect">NHibernate.Dialect.Oracle10gDialect</property>
        <property name="query.substitutions">true 1, false 0, yes 'Y', no 'N'</property>
        <mapping assembly="WebApplication4" />
     
      </session-factory>
    </hibernate-configuration>
     
    3.主要文件
    DEP.cs
    using System;
    using System.Collections.Generic;
    using System.Web;
    using System.Linq;
    using System.Data.Linq;
    using System.Data.Linq.Mapping;
    namespace QuickStart
    {
        [Table]
        public class DEP
        {
            [Column(IsPrimaryKey = true)]
            public virtual int DEPID { get; set; }
     
            [Column]
            public virtual string Name { get; set; }
     
            public DEP()
            {
            }
     
        }
    }
     
    DEP.hbm.xml(要设为嵌入的资源和始终复制)
     
    <?xml version="1.0" encoding="utf-8" ?>
    <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="WebApplication4">
     
      <class name="QuickStart.DEP" table="DEP1" lazy="false">
     
        <!-- A 32 hex character is our surrogate key. It's automatically
                generated by NHibernate with the UUID pattern. -->
        <id name="DEPID">
          <column name="DEPID" not-null="true"/>
          <generator class="sequence">
            <param name="sequence">DEP1_SEQU</param>
          </generator>
     
        </id>
        
     
        <!-- A cat has to have a name, but it shouldn' be too long. -->
        <property name="Name"/>
        
       
      </class>
     
    </hibernate-mapping>
     
    4.操作代码
     
    ISession session = NHibernateHelper.GetCurrentSession();
    ITransaction tx = session.BeginTransaction();
    DEP dep = new DEP();
    dep.Name = "basic";
    session.Save(dep);
    tx.Commit();
    NHibernateHelper.CloseSession();
  • 相关阅读:
    android LinearLayout设置selector不起作用解决
    LinearLayout 垂直滚动条
    安卓如何限制横屏和竖屏
    Android特效 五种Toast详解
    打开MySQL数据库远程访问的权限
    android edittext不弹出软键盘
    高速掌握Lua 5.3 —— 扩展你的程序 (1)
    10分钟-jQuery过滤选择器
    2014年软件设计师考试后记
    Spring监管下的Hibernate配置文件
  • 原文地址:https://www.cnblogs.com/kenny999/p/2309657.html
Copyright © 2020-2023  润新知