学习使用NHibernate2.1.0Beta1(五)— 创建站点测试

1、首先,创建一个ASP.NET站点项目

2、添加引用:

    1)引用DALayer.dll程序集

    2)把OrmCodeGenerator输出目录下的hibernate.cfg.xml添加到bin目录下。我下载的OrmCodeGenerator默认输出的默认文件名是hibernate.cfg.config,你可以将其扩展名更改为XML或者在OrmCodeGenerator源码中修改输出文件的扩展名。

3、在Default.aspx的前台界面拖放一个GridView控件,然后在Page_Load中写如下代码:

 

Code

 

测试通过!

4、配置数据库连接字符串

    1)在Web.config中配置

复制代码
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    
<configSections>
      
<section name="hibernate-configuration"
               type
="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
      
<section name="log4net"
                   type
="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
    
</configSections>
  
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
    
<session-factory>
      
<property name="connection.provider">NHibernate.Test.DebugConnectionProvider, NHibernate.Test</property>
      
<property name="cache.provider_class">NHibernate.Cache.HashtableCacheProvider, NHibernate</property>
      
<property name="cache.use_query_cache">true</property>
      
<property name="connection.isolation">ReadCommitted</property>
      
<!-- This is the System.Data.dll provider for MSSQL Server -->
      
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
      
<property name="connection.connection_string">
        Server
=(local);initial catalog=demo;uid=sa;pwd=123
      
</property>
      
<property name="show_sql">false</property>
      
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
      
<property name="use_outer_join">true</property>
      
<property name="command_timeout">444</property>
      
<property name="query.substitutions">true 1false 0, yes 'Y', no 'N'</property>
    
</session-factory>
  
</hibernate-configuration>
  
<!-- This section contains the log4net configuration settings -->
  
<log4net debug="false">
    
<!-- Define some output appenders -->
    
<appender name="trace" type="log4net.Appender.TraceAppender, log4net">
      
<layout type="log4net.Layout.PatternLayout,log4net">
        
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
      
</layout>
    
</appender>
    
<appender name="console" type="log4net.Appender.ConsoleAppender, log4net">
      
<layout type="log4net.Layout.PatternLayout,log4net">
        
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
      
</layout>
    
</appender>
    
<appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net" >
      
<param name="File" value="log.txt" />
      
<param name="AppendToFile" value="false" />
      
<param name="RollingStyle" value="Date" />
      
<param name="DatePattern" value="yyyy.MM.dd" />
      
<param name="StaticLogFileName" value="true" />
      
<layout type="log4net.Layout.PatternLayout,log4net">
        
<param name="ConversionPattern" value="%d [%t] %-5p %c - %m%n" />
      
</layout>
    
</appender>
    
<!-- Setup the root category, add the appenders and set the default priority -->
    
<root>
      
<priority value="WARN" />
      
<appender-ref ref="console" />
    
</root>
  
</log4net>
</configuration>
复制代码

修改你的数据库版本和连接字符串。

更改DAL项目中所有文件中的如下一行代码

ISessionFactory factory = new Configuration().Configure().BuildSessionFactory();


ISessionFactory factory = new Configuration().AddAssembly("AppModel").Configure().BuildSessionFactory();

   站点中添加对NHibernate.Test.dll的引用。”AppModel“是Model项目程序集名称。
   2)使用单独配置文件

     使用代码生成器生成的hibernate.cfg.xml,已拷贝到站点的bin目录下,修改其中的数据库连接字符串就可以了,DAL层中依然使用


 ISessionFactory factory = new Configuration().Configure().BuildSessionFactory();
创建ISessionFactory实例。

复制代码
<?xml version="1.0" encoding="utf-8"?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory >
   
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
   
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
   
<property name="connection.connection_string">Server=.;initial catalog=Demo;User Id=sa;Password=123;</property>
   
<property name="show_sql">true</property>
   
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
   
<property name="use_outer_join">true</property>
   
<mapping assembly="AppModel" />
</session-factory>
</hibernate-configuration>
复制代码

posted on   Ferry  阅读(727)  评论(0编辑  收藏  举报

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述
< 2009年6月 >
31 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 1 2 3 4
5 6 7 8 9 10 11

导航

统计

点击右上角即可分享
微信分享提示