欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

VS2015ASP.NET MVC5项目中Spring.NET配置方法(超详细)

程序员文章站 2023-01-11 19:35:40
VS2015,ASP.NET MVC5 中使用spring.net ......

首先,在asp.net mvc5项目右键,如下图所示,选择“管理nuget程序包。。。”

VS2015ASP.NET MVC5项目中Spring.NET配置方法(超详细)

然后,在弹出的页面的搜索框中输入“spring.web”,在返回结果中选择spring.web和spring.web.mvc5以及spring.core,等待安装

 

至此,基本的spring.net环境所需要的外部程序已经安装完成.

 然后,接下来我们配置mvc项目的web.config文件,配置完成的截图如下:

VS2015ASP.NET MVC5项目中Spring.NET配置方法(超详细)

代码如下:

<configuration>
  <configsections>

    <!-- entity framework configuration -->
    <section name="entityframework" type="system.data.entity.internal.configfile.entityframeworksection, entityframework, version=6.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089" requirepermission="false" />
    
    <!--log4net的块配置-->
    <section name="log4net" type="log4net.config.log4netconfigurationsectionhandler, log4net" />
    <!--spring.net块配置-->
    <sectiongroup name="spring">
      <section name="context" type="spring.context.support.mvccontexthandler, spring.web.mvc5" />
    </sectiongroup>
  </configsections>
  <!--spring.net的容器的配置节点-->
  <spring>
    <context>
      <resource uri="file://~/config/common.xml" />
      <resource uri="file://~/config/service.xml" />
      <resource uri="file://~/config/controllers.xml" />
    </context>
  </spring>

接下来,为大家介绍spring.net的功能的使用(依赖注入,构建类的时候赋予属性)。比如我在controler中想使用bll层的一个类中的方法。那么可以如下面所示

控制器:userinfocontroller

bll层类:iuserinfoservice

首先,在控制器中定义一个属性。

VS2015ASP.NET MVC5项目中Spring.NET配置方法(超详细)

其次,在配置文件中,添加控制器层对应的controller.xml文件,文件路径在web.config中已经声明

<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net">

  <object type="ui.controllers.userinfocontroller, ui" singleton="false" >
    <property name="u" ref ="userinfoservice" />
  </object>

  <object type="ui.controllers.logincontroller, ui" singleton="false" >
    <property name="userinfoservice" ref ="userinfoservice" />
  </object>

</objects>
  <object type="ui.controllers.userinfocontroller, ui" singleton="false" >
    <property name="u" ref ="userinfoservice" />
  </object>

 这段的意思是在这个控制器下的“u”这个字段的赋值是由userinfoservice配置,对应的service.xml文件如下配置:

<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net">

  <object name="userinfoservice" type="bll.userinfoservice, bll" singleton="false" >
  </object>

</objects>

这样就可以做到赋值了。然后比较重要的一步是在程序开始前进行赋值,具体的操作是在global.asax文件中:

public class mvcapplication : springmvcapplication

让mvcapplication来继承springmvcapplication这个类,

VS2015ASP.NET MVC5项目中Spring.NET配置方法(超详细)

通过查看源码我们知道这个类也是继承与我们asp.net中最重要的类httpapplication。

vs这个软件真的越来越强大了,省去了我们许多去寻找各种dll的时间。以上各个过程都是实际项目中一个小测试用的,经测试可以调用bll层中的方法

,如果大家有什么不理解或者出现问题的地方,欢迎讨论。或者加我qq:1224327326,备注spring.net