整个solution结构如下:
下面介绍每个project:
1. Service.Interface 定义契约
ICalculator.cs
2. Service 实现服务
Calculator.cs
3. Hosting:发布服务
App.config
Program.cs
4. Client: 调用服务
App.config
Program.cs
'
build solution,执行Hosting,Host成功:
运行client,出现以下error:
Root Cause:Hosting的program.cs文件里,使用了using关键字,所以当服务host起来之后,创建的两个ServiceHost对象就会被dispose掉 ,所有找不到服务,出现这个error。
Solution:使用如下方式:
然后运行,执行成功: