WCF学习分享2

扫码查看

整个solution结构例如以下:

WCF学习分享2-LMLPHP

以下介绍每一个project:

1. Service.Interface 定义契约

ICalculator.cs

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="border:none; max-width:100%">

2. Service 实现服务

Calculator.cs

WCF学习分享2-LMLPHP

3. Hosting:公布服务

App.config

WCF学习分享2-LMLPHP

Program.cs

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

4. Client:  调用服务

App.config

WCF学习分享2-LMLPHP

Program.cs

'WCF学习分享2-LMLPHP

build solution,运行Hosting,Host成功:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" style="max-width:100%; color:rgb(54,46,43); font-family:Arial; font-size:14.0000009536743px; line-height:25.9999980926514px; border:none">

执行client,出现下面error:

WCF学习分享2-LMLPHP

Root Cause:Hosting的program.cs文件中,使用了usingkeyword,所以当服务host起来之后。创建的两个ServiceHost对象就会被dispose掉 ,全部找不到服务,出现这个error。

Solution:使用例如以下方式:

WCF学习分享2-LMLPHP

然后执行,执行成功:

WCF学习分享2-LMLPHP

05-11 15:24
查看更多