asp.net MVC2 初探六

简介:
本节大致讲解Nhibernate和Spring的结合及其配置
<? xml  version ="1.0"  encoding ="utf-8"  ?> 
< objects  xmlns ="http://www.springframework.net" 
                  xmlns:xsi ="http://www.w3.org/2001/XMLSchema-instance" 
                  xsi:schemaLocation ="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd" > 

     < object  id ="SessionFactory"  type ="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate12" > 
         < property  name ="DbProvider"  ref ="DbProvider"  /> 
         < property  name ="MappingAssemblies" > 
             < list > 
                 < value >Model </ value > 
             </ list > 
         </ property > 
         < property  name ="HibernateProperties" > 
             < dictionary > 
                 < entry  key ="hibernate.connection.provider"  value ="NHibernate.Connection.DriverConnectionProvider"  /> 
                 < entry  key ="hibernate.dialect"  value ="NHibernate.Dialect.MsSql2005Dialect"  /> 
                 < entry  key ="hibernate.connection.driver_class"  value ="NHibernate.Driver.SqlClientDriver"  /> 
                 < entry  key ="show_sql"  value ="true"  /> 
             </ dictionary > 
         </ property > 
     </ object > 

     < object  id ="HibernateTransactionManager"  type ="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate12" > 
         < property  name ="DbProvider"  ref ="DbProvider"  /> 
         < property  name ="sessionFactory"  ref ="sessionFactory"  /> 
     </ object > 

     < object  id ="TransactionInterceptor"  type ="Spring.Transaction.Interceptor.TransactionInterceptor, Spring.Data" > 
         < property  name ="TransactionManager"  ref ="HibernateTransactionManager"  /> 
         < property  name ="TransactionAttributeSource" > 
             < object  type ="Spring.Transaction.Interceptor.AttributesTransactionAttributeSource, Spring.Data"  /> 
         </ property > 
     </ object > 

     < object  id ="DbProvider"  type ="DAO.SQLProvider, DAO" > 
         < property  name ="ConnectionString"  value ="server=.\sql2k5;uid=sa;pwd=sa123;database=test;"  /> 
     </ object > 
     < object  id ="SpringDaoHelper"  type ="DAO.SpringDaoHelper" > 
         < property  name ="SessionFactory"  ref ="SessionFactory"  /> 
     </ object > 

</ objects > 
web.config主要配置这三个,其中< httpModules >配置在system.web节点内
< spring > 
         < context > 
             < resource  uri ="config://spring/objects" /> 
             < resource  uri ="assembly://SpringX/SpringX/spring_hibernate_dao.xml" /> 
         </ context > 
         < objects  xmlns ="http://www.springframework.net" /> 
     </ spring >
< httpModules > 
             < add  name ="Spring"  type ="Spring.Context.Support.WebSupportModule, Spring.Web" /> 
         </ httpModules > 
         < httpHandlers > 
             < add  verb ="*"  path ="*.aspx"  type ="Spring.Web.Support.PageHandlerFactory, Spring.Web" /> 
         </ httpHandlers >
< configSections > 
         < sectionGroup  name ="spring" > 
             < section  name ="context"  type ="Spring.Context.Support.WebContextHandler, Spring.Web" /> 
             < section  name ="objects"  type ="Spring.Context.Support.DefaultSectionHandler, Spring.Core" /> 
         </ sectionGroup > 
         < section  name ="SpringOverrideProperty"  type ="System.Configuration.NameValueSectionHandler" /> 
         < section  name ="nhibernate"  type ="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     </ configSections >
好了当你运行出现Nhibernate composite-id class must override Equals()时是因为当使用Nhibernate查询表中的数据时,如果表中存在复合主键,如果没有在相应的实体类中重写Equals(),那么将会出现异常。需要在实体类中重写Equals()方法,如果还出现错误,说是编译不了映射文件,那么再重载GetHashCode()


本文转自 BruceAndLee 51CTO博客,原文链接:http://blog.51cto.com/leelei/323027,如需转载请自行联系原作者

相关文章
|
2月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
43 7
|
2月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
63 0
|
3月前
|
开发框架 前端开发 .NET
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
ASP.NET MVC WebApi 接口返回 JOSN 日期格式化 date format
49 0
|
3月前
|
开发框架 前端开发 安全
ASP.NET MVC 如何使用 Form Authentication?
ASP.NET MVC 如何使用 Form Authentication?
|
3月前
|
开发框架 .NET
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
Asp.Net Core 使用X.PagedList.Mvc.Core分页 & 搜索
129 0
|
6月前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
81 0
|
6月前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
|
6月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
195 0
|
6月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
350 5
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
169 0
下一篇
无影云桌面