zoukankan      html  css  js  c++  java
  • 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();
  • 相关阅读:
    Golang Web入门(3):如何优雅的设计中间件
    Golang Web入门(2):如何实现一个高性能的路由
    基于MySQL 的 SQL 优化总结
    Redis系列(七)Redis面试题
    Redis系列(六)Redis 的缓存穿透、缓存击穿和缓存雪崩
    Redis系列(五)发布订阅模式、主从复制和哨兵模式
    Redis系列(四)Redis配置文件和持久化
    Redis系列(三)Redis的事务和Spring Boot整合
    Redis系列(二)Redis的8种数据类型
    Redis系列(一)Redis入门
  • 原文地址:https://www.cnblogs.com/kenny999/p/2309657.html
Copyright © 2011-2022 走看看