WCF服务系列——定义宿主(IIS服务宿主)

每一个ASP.NET Web服务都具有一个.asmx文本文件,客户端通过访问.asmx文件实现对相应web服务的调用。与之类似,每个WCF服务也具有一个对应的文本文件,其文件扩展名为.svc。基于IIS的服务寄宿要求相应的WCF服务具有相应的.svc文件,.svc文件部署于IIS站点中,对WCF服务的调用体现在对.svc文件的访问上。

第一步、新建WCF服务站点

在解决方案上右击,选择“添加”->“新建网站”,打开新建网站对话框。在“添加新网站”对话框中,我们选择“WCF服务”,并把网站的名子命名为“CalculateIISHost”

WCF服务系列——定义宿主(IIS服务宿主)_第1张图片

建立起来的新的WCF服务站点的App_Code文件中自动为我们生成两个类文件:IService.cs和Service.cs。这两个文件对我们来说没有用,我们删掉。

第二步、添加引用

在刚刚创建的WCF服务站点上添加对WCF服务库项目--CalculateWcfService项目的引用。

WCF服务系列——定义宿主(IIS服务宿主)_第2张图片

第三步、配置Service.svc文件

双击Service.svc文件,我们可以看到它的声明指示如下:

<%@ ServiceHost Language="C#" Debug="true" Service="Service" CodeBehind="~/App_Code/Service.cs" %>

由于在第二步中我们已经把IService.cs和Service.cs两个文件已经删除了,所以这里的声明指示内容修改一下,让这个Service.svc文件的后台代码指向我们上次创建的WCF服务库项目--CalculateWcfService项目中的类,改后的代码如下:

<%@ ServiceHost Language="C#" Debug="true" Service="CalculateWcfService.CalculateService" %>

我们把其中的Service属性指定为CalculateWcfService命名空间下的CalculateService类,并把CodeBehind属性删去了。

第四步、配置此WCF服务站点与WCF服务库项目之间的类的对应。
虽然在第二步中我们添加了对Services项目的引用,并且在第三步中修改了Service.svc的类的对应,但此时我们的WCF服务站点并不能把WCF服务库中的服务和终结点发布出来,还需要我们对web.config进行一系列的配置工作。web.config配置文件的配置和上面讲过的配置方式一样,在此不再重复。

第五步、测试运行WCF服务站点

在Service.svc上右击,选择“在浏览器中查看”,在IE中运行此服务。

由此我们看到我们可以在ASP.NET Development Server中发布我们的WCF服务了。

第六步、在IIS布署此WCF服务站点。

在IIS建立Web应用程序,指向我们的WCF服务站点所在的目录。然后在IIS运行我们发布的WCF服务 。

到此为至我们在IIS中发布WCF服务成功

 

源代码:https://download.csdn.net/download/kone0611/10634335

你可能感兴趣的:(WCF/WebService)