使用IIS发布WCF服务

时间:2021-02-19 21:09:09

上一篇是Windows服务为宿主的WCF服务,现在用IIS为宿主发布WCF服务。

第一步:肯定是新建一个WCF服务啦【是WCF服务应用程序】,然后在解决方案上再次添加一个新项目【我们选择WCF服务库,添加此服务库完全是为了以后编码的方便。】看下图:

使用IIS发布WCF服务

第二步:将WCFService中的IService1.cs和Service1.svc.cs删除掉【我们要用WCFServiceLibrary中的类】,然后在WCFService添加引用WCFServiceLibrary。最后我们双击Service1.svc,修改一下他的声明指示,让他的代码指向我们建立的WCF服务库项目WCFServiceLibrary。

修改之前是:<%@ ServiceHost Language="C#" Debug="true" Service="WCFService.Service1" CodeBehind="Service1.svc.cs" %>

修改之后是:<%@ ServiceHost Language="C#" Debug="true" Service="WCFServiceLibrary.Service1" %>看下图:

使用IIS发布WCF服务

第三步:我们就要开始配置web.config,我们知道WCF实现通信的核心要素就是结点【Endpoints】,而Endpoint由三部分组成:Address,Binding,Contract我们一般简称为WCF的ABC。这里我们直接配置,就不手写啦,看下图:右击web.config,选择【编辑WCF配置】。

使用IIS发布WCF服务

第四步:WCF配置      图一:点击新建服务

使用IIS发布WCF服务

图二:浏览,添加【此处一定要先重新生成解决方案】。

使用IIS发布WCF服务

图三:配置完成。

使用IIS发布WCF服务

第五步:将发布WCF,并放在IIS上。【我们之前建了一个WCF服务库WCFServiceLibrary中的方法GetData(),我们一会要在客户端调用】

右击WCFServiceLibrary--->发布。

使用IIS发布WCF服务

第六步:打开IIS,添加网站并且将对应的应用程序池中的.NET Framework版本选择为一致。发布成功,浏览看下图:

使用IIS发布WCF服务

第七步:开始调用吧,新建一个控制台应用程序。添加服务引用,看下图:

使用IIS发布WCF服务

第八步:完成调用,并调试。看下图:

使用IIS发布WCF服务