在之前的博客已经对WCF的基础知识做了介绍。而且做了一个简单的小样例。

假设你看了之前的博客,相信你已经对WCF有了一定的掌握。这篇博客主要说一下怎样把WCF服务公布的IISserver上。

在上篇博客我们做的Demo中,我们是自己写了一个服务端,使用WinForm自己公布WCF服务。可是在实际的项目中,我们不能永远启动这这个程序窗体。既然是服务端。那么他就应该在server中,作为一个“服务”,“默默的”为我们工作就是啦!

作为Windows家族一员的IIS永远是.NET平台的首先server。以下解说怎样把WCF服务公布到IIS中。

以我们上篇博客中做的Demo为例,我们把它公布到IIS中。

整体的思路就是把WCF作为一个站点公布。那么我们就能够通过http协议訪问到WCF服务啦!

開始吧!

1、安装相关windows功能

当然。要想公布站点,IIS以及相关的功能服务是必需要先安装的。

除此之外你还须要安装.NET Framework对应版本号。安装WCF
http 激活

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

2、新建根文件夹。并设置根文件夹权限

首先,在你的某个盘中(我的放在了桌面)新建一个目录,作为我们我们公布服务的根目录。然后设置这个目录的訪问权限:

右键——>属性——>安全,设置对应的用户为同意訪问。

3、拷贝dll文件到根文件夹中

将项目中bin文件夹复制到根文件夹中

将web.config复制到根文件夹中

将UserServiceImpl.svc复制到根文件夹中

记得把UserServiceImpl.svc中的host指向改动哦:

<span style="white-space:pre">	</span><%@ ServiceHost Language="C#" Debug="true" Service="WcfServiceDemo.UserServiceImpl" CodeBehind="UserServiceImpl.svc.cs" %>

4、公布站点

打开IIS。右键“站点”——>加入站点——>输入对应的信息后点击确定,完毕公布

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

指定UserServiceImpl.svc为默认文档。

5、验证公布

到这里我们就已经成功的把WCF公布到了IIS中,如今你能够验证一下是否公布
成功了

在浏览器中输入你加入站点时指定的地址以及port号,假设假设出现一下页面,则就要恭喜你啦。

当然,公布过程中可能会出现各种各样的问题。可是不要操心。这些问题都是公布站点过程中常见的问题。你仅仅须要依照提示的错误去网上找,非常easy就能够解决的。

至此。我们经过基本内容介绍、小Demo的完毕、WCF在IIS中的公布。我们已经完毕了服务的提供工作了。其它人能够通过HTTP协议享受你提供的服务啦。

WCF探索之旅(三)——IIS公布WCF服务的更多相关文章

  1. WCF探索之旅(五)——WCF与WebService的异同

    前几篇文章我们简单的介绍了WCF以及怎样使用它,今天我们来讨论一下WCF和WebService的异同. 相信大多数同学跟我一样,对于WebService有所了解.并且应该说你是先听说WebServic ...

  2. WCF探索之旅(一)——入门

    背景 对于.NET程序员来说,假设你不知道WCF,那仅仅能说明一点:你还是个菜鸟. 曾经也用.NET做过几个系统,尤其做后面的系统的时候,心里就有点沾沾自喜了! 想着,.NET也就这点东西,我如今也能 ...

  3. WCF学习笔记(2)——使用IIS承载WCF服务

    通过前面的笔记我们知道WCF服务是不能独立存在,必须“寄宿”于其他的应用程序中,承载WCF服务的应用程序我们称之为“宿主”.WCF的多种可选宿主,其中比较常见的就是承载于IIS服务中,在这里我们来学习 ...

  4. [老老实实学WCF] 第三篇 在IIS中寄存服务

    老老实实学WCF 第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型,包括定义和实现服务协定.配置服务.寄宿服务.通过添加服务引用的方式配置客户端并访问服务.我 ...

  5. (转) [老老实实学WCF] 第三篇 在IIS中寄存服务

    第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型,包括定义和实现服务协定.配置服务.寄宿服务.通过添加服务引用的方式配置客户端并访问服务.我们对WCF的编程生 ...

  6. WCF实例管理的三种方式

    很多情况下,我们都需要控制wcf服务端对象的初始化方式,用来控制wcf实例在服务端的存活时间. Wcf框架提供了三种创建wcf实例的方式. WCF服务对象实例化基础 在普通的WCF请求和相应过程中,将 ...

  7. 在IIS中寄存服务

    http://blog.csdn.net/songyefei/article/details/7381595 第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型 ...

  8. WCF学习之旅—第三个示例之四(三十)

           上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)   ...

  9. WCF学习之旅—第三个示例之二(二十八)

    上接WCF学习之旅—第三个示例之一(二十七) 五.在项目BookMgr.Model创建实体类数据 第一步,安装Entity Framework 1)  使用NuGet下载最新版的Entity Fram ...

随机推荐

  1. [SaltStack] Multi-Master配置

    Multi Master配置 从salt 0.16.0版本开始, 管理minions可以使用multi-master特性. 当使用multi-master时, 所有masters均可以正常运行, 任何 ...

  2. Codeforces 632F Magic Matrix(bitset)

    题目链接  Magic Matrix 考虑第三个条件,如果不符合的话说明$a[i][k] < a[i][j]$ 或 $a[j][k] < a[i][j]$ 于是我们把所有的$(a[i][j ...

  3. Codeforces 429D Tricky Function(平面最近点对)

    题目链接  Tricky Function $f(i, j) = (i - j)^{2} + (s[i] - s[j])^{2}$ 把$(i, s[i])$塞到平面直角坐标系里,于是转化成了平面最近点 ...

  4. ACM的奇计淫巧_扩栈C++/G++

    C++ #pragma comment(linker, "/STACK:102400000,102400000") G++ << ; // 256MB char *p ...

  5. group by与distinct效率分析及优化措施

    如何使用group by进行去重 因为mysql的distinct在结果集中,全部不同,才可以去重.所以,当我们进行去重处理的时候,需要单独对某列进行去重,可以使用group by子句进行分组去重se ...

  6. lock与monitor的区别

    1.Lock 只能对引用对象加锁 Lock锁定区间内可以对锁定值修改而不发生运行时错误,通常也会采用此种修改方式.这种方式又有点类同于使用Monitor.Wait取得资源,并对这个资源进行操作. 用法 ...

  7. 解决php中redis client进行subscribe操作出现timeout的问题

    出现该问题的原因是poll设置接收超时所致,这个超时默认设置60s 设置Redis::OPT_READ_TIMEOUT配置项: 解决方法如下: <?php $redis = new Redis( ...

  8. 【hibernate】主键生成策略使用UUID报出如下警告:org.hibernate.id.UUIDHexGenerator - HHH000409: Using org.hibernate.id.UUIDHexGenerator which does not generate IETF RFC 4122 compliant UUID values;

    主键生成策略使用UUID报出如警告如下: 控制台- 2017-11-24 18:40:14 [restartedMain] WARN org.hibernate.id.UUIDHexGenerator ...

  9. Linux下测试PHP和MySQL是否正确安装

    测试PHP: 本打算这样配置: 1.拷贝PHP配置文件 cd /usr/local/php/etc cp php.ini /usr/local/php/lib/php.ini 2.修改apache配置 ...

  10. YOLO+yolo9000配置使用darknet

    Installing Darknet 1.直接设置使用,编译通过 git clone https://github.com/pjreddie/darknet.git cd darknet make 2 ...