意料之外,情理之中,Spring.NET 3.0 版本發布-
意料之外,情理之中,Spring.NET 3.0 版本發布-
備受社區和企業開發者廣泛關註的Spring.NET在上周發布了3.0版本,並且目前已經保持著持續的更新,讓我們一起來看一看他究竟發布了哪些令人激動的新特性吧!
Github上的原貼地址為:https://github.com/spring-projects/spring-net。
1.引言
Spring.NET 3.0.0版本包含
- 一個功能齊全的控制反轉容器
- 面向方面的編程框架
- 輕量級腳本的表達式語言
- UI不可知的驗證框架
- ASP.NET框架
- 頁面和用戶控件的依賴註入,雙向數據綁定等。
- ASP.NET MVC和ASP.NET WebAPI框架
- MVC的依賴註入(包括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集成
- 提供依賴註入和AOP建議應用於WCF服務
- Quartz 集成
- 使用依賴註入和Spring的事務支持配置Quartz作業以保留作業詳細信息
- MSMQ集成
- 通過為消息發送和接收提供幫助程序類來簡化MSMQ的使用。與Spring的事務管理功能集成。
- NMS集成
- 通過為消息發送和接收提供幫助程序類來簡化NMS的使用。
- TIBCO EMS集成
- 通過為消息發送和接收提供幫助程序類,簡化了TIBCO EMS的使用。
- NVelocity集成
- 簡化配置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”目錄中找到:
- Spring參考文檔
記錄的示例應用程序可以在“示例”中找到:
- 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票證上。
意料之外,情理之中,Spring.NET 3.0 版本發布-