由於公司需求,需要將.net項目也參與到springcloud微服務中。
現針對.net項目解決方案如下:
分爲兩種steeltoe+Autofac+.net4.X或者steeltoe+Autofac+.net core
說一下,如果你的.net項目採用比較舊的.net4點幾的版本採用第一種方案,如果你的.net項目採用比較新的.net core框架則使用第二套方案。
同時steeltoe也包括兩個版本一個是1x,一個是2x.這兩個版本針對.net4.X和.net core都做了實現
steeltoe官網:http://steeltoe.io/點擊打開鏈接
1x api文檔:http://steeltoe.io/1x/steeltoe-discovery/點擊打開鏈接
2x api文檔:http://steeltoe.io/docs/steeltoe-discovery/點擊打開鏈接
這裏是steeltoe給的例子:https://github.com/SteeltoeOSS/Samples點擊打開鏈接
切換到v1x分支是steeltoe給的針對1x版本的例子。
進入到Samples/Discovery/src/ 目錄下會發現針對.net4和.net core的例子,接下來的解決思路就是研究例子然後自己試着解決符合自己情況的部分了。
我這裏只做了.net4的實現。具體代碼不演示了,具體使用參考api文檔。就給大家總結一下思路。
以官方示例爲例講一下將傳統.net4項目改成註冊到eureka的工程改動:
1、在App_Start下增加如下兩個文件
2、根目錄下增加服務註冊配置appsettings.json,並修改appsetting.json配置註冊到你要用的eureka上
3、Global.asax.cs文件要參照示例項目做改動
4、項目引用中採用NuGet分別增加Autofac,Microsoft.Extensions.Configuration,Pivotal.Discovery.Client等等依賴安裝,具體引用可參考根目錄下的packages.config文件
接下來基本ok了