WCF开发之宿主(Hosting) IIS/WAS宿主 Windows服务宿主 Windows应用程序
来源:互联网 发布:一起走软件刷步数 编辑:程序博客网 时间:2024/05/01 07:08
WCF开发之宿主(Hosting)
http://www.cnblogs.com/CharlesLiu/archive/2010/03/29/1689785.html
利用IIS作为宿主 发布你的WCF Service
最近公司的一个需求,涉及到WCF开发。在网上找了些资料,大都是利用单独的应用程序、或者Windows服务作为WCF Service的host。其实WCF还提供一种方式,和以前的Remoting比较类似,就是基于IIS发布你的WCF Service。
大致部署步骤如下:
1.编译好WCF Service的Class Library,确保没有错误。
2.建立.svc文件,内容格式如下:
这里的Service,是你的Service名称,及其所属命名空间.
为了确保IIS能正确识别.svc文件,需要在IIS属性中检查,如果没有.svc类型,需要手动添加,如图:
3.在IIS发布WCF Service,将其目录设置为Web共享,并注意在IIS中,为该虚拟目录打开匿名访问的权限。
4.在工程中,添加Web.config文件。这里需要建立WCF Service服务段的配置信息,我们可以直接利用MS提供的配置工具方便进行配置,如图:
打开配置工具,根据配置向导,选择好Service Type 和Contract信息。在选择服务通讯方式的时候,我们需要选择http通讯方式(因为我们服务的宿主是IIS,所以应选择http方式)。在EndPoint中,填入Endpoint的地址。再选择添加一个Endpoint,address为mex,类型为mexHttpBinding,Contract填入IMetadataExchange。
5.为了能在IIS中测试发布的效果,我们需要允许从客户端通过http方式获取元数据,这样的选项WCF默认是false,所以我们还需要一点小设置:
在Service Behavior节点,单击右键,新建一个Service Behavior,单击Add按钮,添加一个Extention Position,名称为serviceMetadata,如图:
并在上面双击,在窗口中,把HttpGetEnabled选项设置为true,如图:
一切的准备工作就绪后,我们就可以通过IIS来访问测试我们的WCF Service了。如下图:
红色框中的部分,是我们设置了HttpGetEnabled的结果,否则是不会出现这一行的,它允许我们从客户端以WSDL方式获取其源数据。
小结一下:采用IIS作为宿主程序,方便之处就在于你不必专门为WCF Service再去建立一个host文件。
source: http://www.cnblogs.com/kugou123/archive/2009/02/12/667482.html
- WCF开发之宿主(Hosting) IIS/WAS宿主 Windows服务宿主 Windows应用程序
- 化零为整WCF(5) - 宿主Hosting(宿主在IIS, Application, WAS, WindowsService)
- 化零为整WCF(5) - 宿主Hosting(宿主在IIS, Application, WAS, WindowsService)
- 以windows服务为宿主的WCF服务
- 用IIS做宿主的WCF服务
- WCF服务自宿主
- WCF 服务 宿主在windows service中的Demo
- 移植Windows自宿主WCF服务到Linux/Mono2.8
- WCF 服务 宿主在windows service中的Demo
- WCF 服务 宿主在windows service中的Demo
- wcf宿主为windows服务时,如何配置log4net
- WCF BasicHttpBinding 安全解析(4)windows验证(IIS宿主)
- WCF宿主
- (4)WCF宿主与服务托管
- 宿主
- Windows 脚本宿主
- Windows脚本宿主
- WCF宿主与服务托管
- 查询表结构
- MYSQL 统计多个字段的和
- VIM 编码详解
- 我开工了
- The Joy of Living-生活的乐趣 -美文故事-散文随笔- 文章阅读网
- WCF开发之宿主(Hosting) IIS/WAS宿主 Windows服务宿主 Windows应用程序
- web 服务启动时自动执行某类的代码
- IT行业女之祸水
- 树言树语:QQ影音和暴风影音用户体现
- linux socket编程
- 条款08:别让异常逃离析构函数(Prevent exceptions from leaving destructors.)
- hibernate 笔记
- 准备做基于GPIB的自动微波测量系统,有做相关的大家交流一下,共同学习,共同进步!
- CMS一例故障排除