意料以外,情理之中,Spring.NET 3.0 版本發佈-
備受社區和企業開發者普遍關注的Spring.NET在上週發佈了3.0版本,而且目前已經保持着持續的更新,讓咱們一塊兒來看一看他究竟發佈了哪些使人激動的新特性吧!git
Github上的原貼地址爲:https://github.com/spring-projects/spring-net。github
1.引言
Spring.NET 3.0.0版本包含spring
- 一個功能齊全的控制反轉容器
- 面向方面的編程框架
- 輕量級腳本的表達式語言
- UI不可知的驗證框架
- ASP.NET框架
- ASP.NET MVC和ASP.NET WebAPI框架
- 聲明式事務管理抽象
- 經過跨不一樣事務API使用通用XML配置和屬性進行聲明式事務管理
- ADO.NET框架
- 簡化ADO.NET的使用。DAO支持類並與Spring的聲明式事務管理功能集成
- 便攜式服務抽象
- 經過.NET Remoting,Web Service或.NET Serviced Component導出純.NET對象,並根據端點URL和服務接口建立客戶端代理。
- NHibernate整合
- NHibernate 5集成簡化了NHibernate的使用並參與了Spring的聲明式事務管理功能。
- ASP.NET AJAX集成
- 導出器用於公開已將依賴注入和AOP應用於JavaScript的普通對象。
- NUnit和MSTest集成
- 提供依賴注入測試用例和Spring容器加載和緩存。。數據訪問和事務管理功能有助於集成測試。
- WCF集成
- Quartz 集成
- 使用依賴注入和Spring的事務支持配置Quartz做業以保留做業詳細信息
- MSMQ集成
- 經過爲消息發送和接收提供幫助程序類來簡化MSMQ的使用。與Spring的事務管理功能集成。
- NMS集成
- 經過爲消息發送和接收提供幫助程序類來簡化NMS的使用。
- TIBCO EMS集成
- 經過爲消息發送和接收提供幫助程序類,簡化了TIBCO EMS的使用。
- NVelocity集成
Spring.NET是基於Java的Spring Framework的一個端口。反過來,Java / J2EE Spring Framework基於Rod Johnson(Wrox,2002)的「Expert One-on-One J2EE Design and Development」中發佈的代碼。編程
2.支持的.NET框架版本
Spring.NET 3.0.0支持.NET 4.5.2和.NET Standard 2.0及更高版本。瀏覽器
3.已知問題
4.發佈信息
發佈內容:緩存
- 「src」包含框架的C#源文件
- 「test」包含Spring.NET測試套件的C#源文件
- 「bin」包含各類Spring.NET分發dll文件
- 「lib / Net」包含構建框架所需的共享第三方庫
- 「lib / NHibernate3」包含NHibernate 3.3 dll
- 「doc」包含參考文檔,MSDN風格的API幫助和Spring.NET xsd。
- 「examples」包含示例應用程序。
- 「build-support」包含須要使用NAnt構建的附加應用程序做爲一些方便的VS.NET解決方案文件。
- 「dev-support」包含「開發人員支持」工具和代碼,例如VS.NET的解決方案模板
使用/ DEBUG完成調試構建:使用/ DEBUG:pdbonly標記發佈版本。框架
提供了用於框架和示例的VS.NET解決方案。工具
有關最新信息,請訪問公共網站:http://www.springframework.net/單元測試
Spring Framework是根據Apache軟件許可證的條款發佈的(請參閱license.txt)。測試
5.分發DLL
「bin」目錄包含如下不一樣的dll文件,供應用程序使用。依賴關係不是.NET BCL上的依賴關係。
- Spring.Core(~765 KB)
- Spring.Aop(~150 KB)
- Spring.Data(~320 KB)
- Spring.Data.NHibernate5(~90 KB)
- Spring.Services(~70 KB)
- Spring.Web(~165 KB)
- Spring.Web.Extensions(~8 KB)
- Spring.Web.Mvc5(~8 KB)
- Spring.Testing.NUnit(~24 KB)
- Spring.Testing.Microsoft(~24 KB)
- Spring.Messaging(約65 KB)
- Spring.Messaging.Nms(~100 KB)
- Spring.Scheduling.Quartz3(~44 KB)
- Spring.Template.Velocity(~44 KB)
- 內容:控制容器的反轉。集合類。
- 依賴關係:Common.Logging
- 內容:面向抽象的編程框架。
- 依賴關係:Spring.Core,Common.Logging
- 內容:Transaction和ADO.NET Framework。
- 依賴關係:Spring.Core,Spring.Aop
- 內容:NHibernate 5.x集成
- 依賴關係:Spring.Core,Spring.Aop,Spring.Data,NHibernate
- 內容:Web服務,遠程處理和基於企業組件的服務。
- 依賴關係:Spring.Core,Spring.Aop
- 內容:基於ASP.NET的Web應用程序框架。
- 依賴關係:Spring.Core,Spring.Aop
- 內容:ASP.NET AJAX Integartion
- 依賴關係:Spring.Core,Spring.Aop,System.Web.Extensions
- 內容:ASP.NET MVC5和WebAPI Integartion
- 依賴關係:Spring.Core,Spring.Web
- 內容:NUnit集成
- 依賴關係:Spring.Core,Spring.Data,NUnit
- 內容:MSTest集成
- 依賴關係:Spring.Core,Spring.Data,MSTest
- 內容:MSMQ集成
- 依賴關係:Spring.Core,Spring.Data,System.Messaging
- 內容:NMS集成
- 依賴關係:Spring.Core,Spring.Data,Apache NMS
- 內容:Quartz32.x集成
- 依賴關係:Spring.Core,Spring.Data,Quartz
- 內容:NVelocity集成
- 依賴關係:Spring.Core,NVelocity
6.從哪裏開始?
文檔能夠在「docs」目錄中找到:
記錄的示例應用程序能夠在「示例」中找到:
- IoCQuickStart.MovieFinder - 一個演示基本IoC容器行爲的簡單示例。
- IoCQuickStart.AppContext - 顯示各類IApplicationContext功能的使用。
- IoCQuickStart.EventRegistry - 顯示鬆散耦合事件功能的使用。
- AopQuickStart - 顯示AOP功能的使用。
- CachingQuickStart - 顯示緩存抽象的使用。
- SpringAir - 顯示Spring.Web功能的使用。
- 計算器 - 顯示Spring.Services功能的使用。
- WebQuickStart - 顯示Spring.Web功能的逐步使用。
- Web.Extensions.Example - 顯示ASP.NET AJAX integartion。
- DataQuickStart - 顯示使用Spring.Data數據訪問功能。
- TxQuickStart - 顯示Spring的事務功能。
- Data.NHibernate.Northwind - 顯示使用Spring的NHibernate功能。
- WCFQuickStart - 顯示在WCF中使用DI和AOP
- NMSQuickStart - 使用NMS的示例應用程序
- MSMQ快速入門 - 使用MSMQ的示例應用程序
- Quartz示例 - 使用Quartz進行調度
- Mvc5QuickStart - 顯示ASP.NET MVC 5支持的配置
7.如何創建
VS.NET
Visual Studio 2017須要打開並構建解決方案。Visual Studio的免費社區版本應該足夠了。
NAnt
構建腳本隨下載包一塊兒提供。
構建源並運行單元測試類型
構建測試
若是要運行構建以建立強簽名程序集,能夠經過執行如下命令生成密鑰文件(假設sn.exe在搜索路徑上正確):
sn -k Spring.Net.snk
您須要將Spring.NET.snk文件放入源樹的根文件夾中。執行如下nant命令時,使用此密鑰文件強烈命名全部構建:
nant -D:project.build.sign = true
InnovaSys Document X!用於生成SDK文檔。
8.支持
http://forum.springframework.net/上的用戶論壇可供您提交問題,支持請求以及與其餘Spring.NET用戶交互。
能夠在https://jira.springsource.org/browse/SPRNET找到錯誤和問題跟蹤
Fisheye存儲庫瀏覽器位於https://fisheye.springframework.org/browse/spring-net
要獲取源代碼,請在https://github.com/SpringSource/spring-net上分享github
咱們很樂意在論壇上收到您的反饋。若是您認爲發現了錯誤,請提出改進建議或功能請求,請在JIRA中提交一張票(請參閱上面的連接)。
關於錯誤報告的一句話:若是可能,請嘗試在http://www.springframework.net/downloads/nightly/下載其中一個夜間快照,看看是否已修復此錯誤。若是問題仍然存在,請不要忘記說起您正在使用的Spring.NET版本(檢查Spring.NET dll的文件版本),運行的.NET版本以及如何重現問題的說明。理想狀況下,將一些重現問題的示例代碼附加到JIRA票證上。