6.SN.Controllers

文件夹Config(Controllers.xml)

文件夹Controllers(TestController.cs)

Controllers.xml

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <objects xmlns="http://www.springframework.net">
  3. <object type="SN.Controllers.TestController,SN.Controllers" singleton="false">
  4. <property name="UserService" ref="UserServiceImpl"></property>
  5. </object>
  6. </objects>

TestController.cs

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Web .Mvc ;
  6. using System.Web.Mvc.Ajax;
  7. using SN.Servers;
  8.  
  9. namespace SN.Controllers
  10. {
  11. public class TestController:BaseController
  12. {
  13. private IUserService UserService { get; set; }
  14. public ActionResult Index()
  15. {
  16. ViewBag.Text = "测试Mvc程序";
  17. ViewBag.Users = UserService.GetAllUsers();
  18. return View();
  19. }
  20. }
  21. }

7.SN.Web 这个主意介绍View  web.config

文件夹View(Test(Index.cshtml))

Test=>Index.cshtml

  1. @{
  2. ViewBag.Title = "Index";
  3. }
  4.  
  5. <h2>Index</h2>
  6.  
  7. <h3>@ViewBag.Text</h3>
  8. @foreach (var item in ViewBag.Users)
  9. {
  10. <text>@item.Name +@item.Id</text>
  11. }

Web.config

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!--
  3. For more information on how to configure your ASP.NET application, please visit
  4. http://go.microsoft.com/fwlink/?LinkId=169433
  5. -->
  6. <configuration>
  7. <configSections>
  8. <sectionGroup name="spring">
  9. <section name="context" type="Spring.Context.Support.MvcContextHandler, Spring.Web.Mvc4" />
  10. <!--<section name="parsers" type="Spring.Context.Support.NamespaceParsersSectionHandler, Spring.Core"/>
  11. -->
  12. <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
  13. </sectionGroup>
  14. <section name="databaseSettings" type="System.Configuration.NameValueSectionHandler" />
  15. </configSections>
  16. <!--spring-->
  17. <spring>
  18. <!--<parsers>
  19. <parser type="Spring.Data.Config.DatabaseNamespaceParser, Spring.Data"/>
  20. <parser type="Spring.Transaction.Config.TxNamespaceParser, Spring.Data"/>
  21. </parsers>-->
  22. <context>
  23. <resource uri="assembly://SN.Dao/SN.Dao.Config/SpringNHibernate.xml" />
  24. <resource uri="assembly://SN.Dao/SN.Dao.Config/Objects.xml" />
  25. <resource uri="assembly://SN.Servers/SN.Servers.Config/Servers.xml" />
  26. <resource uri="assembly://SN.Controllers/SN.Controllers.Config/Controllers.xml" />
  27. <!--<resource uri="file://~/Config/SpringNHibernate.xml"/>-->
  28. </context>
  29. </spring>
  30. <!--数据库配置-->
  31. <databaseSettings>
  32. <add key="db.server" value="127.0.0.1" />
  33. <add key="db.database" value="MyTest" />
  34. <add key="db.user" value="sa" />
  35. <add key="db.password" value="sql" />
  36. </databaseSettings>
  37.  
  38. <appSettings>
  39. <add key="webpages:Version" value="2.0.0.0" />
  40. <add key="webpages:Enabled" value="false" />
  41. <add key="PreserveLoginUrl" value="true" />
  42. <add key="ClientValidationEnabled" value="true" />
  43. <add key="UnobtrusiveJavaScriptEnabled" value="true" />
  44. <!---配置Spring.Net NHibernate SessionFactory 对象-->
  45. <add key="Spring.Data.NHibernate.Support.OpenSessionInViewModule.SessionFactoryObjectName" value="NHibernateSessionFactory" />
  46. </appSettings>
  47. <system.web>
  48. <httpModules>
  49. <!---spring net nhibernate sesion 自动加载必须设置次节点(本地测试需要配置否则有错误)-->
  50. <add name="OpenSessionInView" type="Spring.Data.NHibernate.Support.OpenSessionInViewModule, Spring.Data.NHibernate4" />
  51. </httpModules>
  52. <httpRuntime />
  53. <compilation debug="true" targetFramework="4.0" />
  54. <pages controlRenderingCompatibilityVersion="4.0">
  55. <namespaces>
  56. <add namespace="System.Web.Helpers" />
  57. <add namespace="System.Web.Mvc" />
  58. <add namespace="System.Web.Mvc.Ajax" />
  59. <add namespace="System.Web.Mvc.Html" />
  60. <add namespace="System.Web.Routing" />
  61. <add namespace="System.Web.WebPages" />
  62. </namespaces>
  63. </pages>
  64. </system.web>
  65. <system.webServer>
  66. <validation validateIntegratedModeConfiguration="false" />
  67. <modules runAllManagedModulesForAllRequests="true">
  68. <!---spring net nhibernate sesion 自动加载必须设置次节点(ISS服务器必须配置)-->
  69. <add name="OpenSessionInView" type="Spring.Data.NHibernate.Support.OpenSessionInViewModule, Spring.Data.NHibernate4" />
  70. </modules>
  71. <handlers>
  72. <remove name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" />
  73. <remove name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" />
  74. <remove name="ExtensionlessUrlHandler-Integrated-4.0" />
  75. <add name="ExtensionlessUrlHandler-ISAPI-4.0_32bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness32" responseBufferLimit="" />
  76. <add name="ExtensionlessUrlHandler-ISAPI-4.0_64bit" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" modules="IsapiModule" scriptProcessor="%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv4.0,bitness64" responseBufferLimit="" />
  77. <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
  78. </handlers>
  79. </system.webServer>
  80. <runtime>
  81. <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  82. <dependentAssembly>
  83. <assemblyIdentity name="Spring.Core" publicKeyToken="65e474d141e25e07" culture="neutral" />
  84. <bindingRedirect oldVersion="0.0.0.0-2.0.1.40000" newVersion="2.0.1.40000" />
  85. </dependentAssembly>
  86. <dependentAssembly>
  87. <assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
  88. <bindingRedirect oldVersion="0.0.0.0-2.1.1.0" newVersion="2.1.1.0" />
  89. </dependentAssembly>
  90. <dependentAssembly>
  91. <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" culture="neutral" />
  92. <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
  93. </dependentAssembly>
  94. </assemblyBinding>
  95. </runtime>
  96. </configuration>

8.修改Global.asax

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Web;
  5. using System.Web.Http;
  6. using System.Web.Mvc;
  7. using System.Web.Routing;
  8.  
  9. namespace SN.Web
  10. {
  11. // Note: For instructions on enabling IIS6 or IIS7 classic mode,
  12. // visit http://go.microsoft.com/?LinkId=9394801
  13. public class MvcApplication : Spring.Web.Mvc.SpringMvcApplication
  14. {
  15. protected void Application_Start()
  16. {
  17. AreaRegistration.RegisterAllAreas();
  18.  
  19. WebApiConfig.Register(GlobalConfiguration.Configuration);
  20. FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
  21. RouteConfig.RegisterRoutes(RouteTable.Routes);
  22. }
  23. }
  24. }

9.问题解决方案:

1.设置cofing 中xml文件设置(A.始终复制 B.设置嵌入式)

2.引用Spring.Data.Nhibernate 和Spring相关组件版本要保持一致

3.注入问题仔细查看Spring注入机制

4.spring net  nhibernate sesion 自动加载

Spring.Net2.0+NHibernate4.0 +Asp.Net Mvc4 二的更多相关文章

  1. Spring.Net2.0+NHibernate4.0 +Asp.Net Mvc4 一

    1.创建项目结构 控制器:    SN.Controllers 数据访问 :SN.Dao 实体映射: SN.Models 服务层:     SN.Servers 视图层:   SN.Web 2.添加需 ...

  2. 使用bootstrap+asp.net mvc4+IBatis.Net实现的小程序

    这个项目用到了三个技术点 1.bootstap 3.0 2.asp.net mvc4 3.IBatis.Net 这个三个技术点分别解决前端界面展示.中间mvc路由控制.实体框架映射数据访问 重点分页问 ...

  3. SNF快速开发平台3.0之BS页面展示和九大优点-部分页面显示效果-Asp.net+MVC4.0+WebAPI+EasyUI+Knockout

    一)经过多年的实践不断优化.精心维护.运行稳定.功能完善: 能经得起不同实施策略下客户的折腾,能满足各种情况下客户的复杂需求. 二)编码实现简单易懂.符合设计模式等理念: 上手快,见效快.方便维护,能 ...

  4. SNF快速开发平台3.0之-界面个性化配置+10种皮肤+7种菜单-Asp.net+MVC4.0+WebAPI+EasyUI+Knockout

    一.个性配置-首页:可以进行拖动保存配置,下次登录时就会按配置的进行加载 二.个人配置页面 7种菜单用户可自定义配置,和预览效果 10种皮肤自定义配置,和预览效果 皮肤和菜单可以随意组合-部分截图: ...

  5. 建筑材料系统 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发

    框架介绍: 1.基于 ASP.NET MVC4.0 + WebAPI + EasyUI + Knockout 的架构设计开发 2.采用MVC的框架模式,具有耦合性低.重用性高.生命周期成本低.可维护性 ...

  6. 利用CSS预处理技术实现项目换肤功能(less css + asp.net mvc4.0 bundle)

    一.背景 在越来越重视用户体验的今天,换肤功能也慢慢被重视起来.一个web系统用户可以选择一个自己喜欢的系统主题,在用户眼里还是会多少加点分的.我们很开心的是easyui v1.3.4有自带defau ...

  7. Asp.Net MVC4.0 官方教程 入门指南之五--控制器访问模型数据

    Asp.Net MVC4.0 官方教程 入门指南之五--控制器访问模型数据 在这一节中,你将新创建一个新的 MoviesController类,并编写代码,实现获取影片数据和使用视图模板在浏览器中展现 ...

  8. Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型

    Asp.Net MVC4.0 官方教程 入门指南之四--添加一个模型 在这一节中,你将添加用于管理数据库中电影的类.这些类是ASP.NET MVC应用程序的模型部分. 你将使用.NET Framewo ...

  9. Asp.Net MVC4.0 官方教程 入门指南之三--添加一个视图

    Asp.Net MVC4.0 官方教程 入门指南之三--添加一个视图 在本节中,您需要修改HelloWorldController类,从而使用视图模板文件,干净优雅的封装生成返回到客户端浏览器HTML ...

随机推荐

  1. C#查找List 某一段数据

    public void SelectData() { List<int> r = new List<int>(); r.Add(); r.Add(); r.Add(); r.A ...

  2. php socket模拟http中post或get提交数据

    php socket模拟http中post或者get提交数据的示例代码. 代码: sock_post.php: <?php /** * php socket模拟post\get请求 * 编辑:脚 ...

  3. godaddy账号以及域名被盗找回经历以及网络信息安全的思考

    本案涉及到公司的一些机密信息,因此涉及到机密信息,我都将会用一些其他的代号进行替代.不影响读者理解本案.我会按照时间顺序讲述本案经过,是如何一步步找回godaddy账号的. 我供职的公司是一家网络科技 ...

  4. 【笔记篇】C#笔记2

    返回目录:目录请戳这里~ C#数组 基本概念不提.. int[] a; bool[] b = new bool[10]; float[] c = {0.5, 57.0, 233.3, 12345.67 ...

  5. Android开发 内存泄露检测框架LeakCanary

    前言 挖坑后续填坑 中文网站:https://www.liaohuqiu.net/cn/posts/leak-canary-read-me/ gitbub:https://github.com/squ ...

  6. bootStrap-treeview插件

    简要教程 bootstrap-treeview是一款效果非常酷的基于bootstrap的jQuery多级列表树插件.该jQuery插件基于Twitter Bootstrap,以简单和优雅的方式来显示一 ...

  7. Docker这个新软件究竟是用来干嘛的???

    http://dockone.io/article/378 尝试新软件 对开发者而言,每天会催生出的各式各样的新技术都需要尝试,然而开发者却不太可能为他们一一搭建好环境并进行测试.时间非常宝贵,正是得 ...

  8. iOS开发CoreData的多表关联

    1.多表关联 多表关联,对SQL 数据库的操作,在一张表的数据中可以引用另外一张表里的数据.通过 Entity 实体中的 Relationships 来实现,比起传统的 SQL 数据库来,更加简单. ...

  9. Asp.net Core Jenkins Docker 实现一键化部署

    写在前面 在前段时间尝试过用Jenkins来进行asp.net core 程序在IIS上面的自动部署.大概的流程是Jenkins从git上获取代码 最开始Jenkins是放在Ubuntu的Docker ...

  10. 操作系统 Lab1(2)

    中断很久,一看发现又多了一些内容. 打算完成了 Lab1 challenge 1 中断像量表设置的时候我们需要设置一个用于系统调用的 trap门 也就是 利用中断切换特权级 To kernel 调用 ...