随笔 - 705  文章 - 0  评论 - 1103  阅读 - 138万 

使用VS自带的WCFSVCHost(WCF服务主机)发布WCF服务,时刻开发人员测试使用。

下面我们来看一下如何在IIS中部发布一个WCF服务。

环境是VS 2008 (公司电脑没有安装VS2010)^_^

我们从头开始,不写代码,完全的配置,会收获不小。

新建一个WCF 服务库

image

建立一个WCF服务应用程序

image

结果如下

 

image

删除掉WCF程序中不需要的默认文件,如下图

image image

为WcfService1项目添加WcfServiceLibrary1的引用,如下图。

 

 

 

image

 

修改声明指示内容,让这个Service.svc文件的后台代码指向我们创建的WCF服务库项目--WcfServiceLibrary1项目中的服务类,改后的代码如下:

<%@ ServiceHost Language="C#" Debug="true" Service="WcfServiceLibrary1.Service1" %>

 

Ctrl+Shift+B 编译一下解决方案,配置工具用的反射,先编译才行

 

此时我们的WCF服务站点并不能把WCF服务库中的服务和终结点发布出来,还需要我们对web.config进行一系列的配置工作。

右键我们要配置的Web.Config文件,编辑WCF配置

image

在弹出的服务配置窗口中,把Service1服务指定到WCF服务库的WcfServiceLibrary1.dll中的WcfServiceLibrary1.Service1服务类上。

 

image

再把其中的一个对外终结点的Contract设为WCF服务库的WcfServiceLibrary1.dll中的WcfServiceLibrary1.IService1服务契约上。

image

这一步是可选的,我们再为此WCF服务站点添加一个终结点,配置如下图

image

 

下面我们将试着使用不同的终结点与WCF服务进行交互,查看运行情况。

 

当我们使用IIS5或IIS6发布WCF服务的时候一般只创建Http绑定的终结点,而不能创建使用TCP绑定、管道绑定的终结点。

image

 

 

 

 

 

测试服务

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

image

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

右键WcfService1项目,找到Web选项卡,使用IIS调试,就是部署在IIS的虚拟目录上了

image

设置默认启动页面为,Service1.svc  按F5

image

在WCF测试客户端调用我们刚刚在IIS中发布的WCF服务, 关于更多WCF 测试客户端(WcfTestClient.exe) 

注意,使用下图的命令提示窗口,运行WcfTestClient

image

添加服务,并输入服务的地址,这是必须的

image

不得不感叹,微软的东西就是好用啊。

2009-12-23_113013

 

 

我们可以看到发布的服务中有两个终结点:这两个终结点的传输方式不同,但提供的方法是相同的。

 

附加内容

你可以通过上面的方法,集成多个Wcf服务库到WcfService1中来,动手试试吧

2009-12-23_114828

 

源代码:WcfIIS.rar

posted on   冯瑞涛  阅读(38942)  评论(5编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
点击右上角即可分享
微信分享提示