VS2015ASP.NET MVC5項目中Spring.NET配置方法(超詳細)

首先,在ASP.NET MVC5項目右鍵,以下圖所示,選擇「管理Nuget程序包。。。」web

而後,在彈出的頁面的搜索框中輸入「spring.web」,在返回結果中選擇Spring.Web和Spring.Web.MVC5以及Spring.Core,等待安裝spring

 

至此,基本的Spring.Net環境所須要的外部程序已經安裝完成.mvc

 而後,接下來咱們配置mvc項目的web.config文件,配置完成的截圖以下:asp.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層的一個類中的方法。那麼能夠以下面所示ui

控制器:UserInfoControllerspa

BLL層類:IUserInfoService.net

首先,在控制器中定義一個屬性。code

其次,在配置文件中,添加控制器層對應的controller.xml文件,文件路徑在web.config中已經聲明xml

<?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這個類,

經過查看源碼咱們知道這個類也是繼承與咱們asp.net中最重要的類HttpApplication。

VS這個軟件真的愈來愈強大了,省去了咱們許多去尋找各類dll的時間。以上各個過程都是實際項目中一個小測試用的,經測試能夠調用BLL層中的方法

,若是你們有什麼不理解或者出現問題的地方,歡迎討論。或者加我qq:1224327326,備註spring.net

相關文章
相關標籤/搜索