由于公司需求,需要将.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了