一、IIS部分

环境:Windows Server 2008 R2

1.安装WAS,如下图所示:

 
2.网站net.tcp协议绑定,如下图所示:

 
3.网站启用net.tcp,如下图所示:

 
二、WCF代码部分
1.DesignCaseService.svc
  1. <%@ServiceHostLanguage="C#"Debug="true"Service="Web.API.Implementations.DesignCaseService"%>

2.web.config配置示例:
<system.serviceModel>
<services>
<service name="Web.API.Implementations.DesignCaseService" >
<endpoint binding="netTcpBinding" address="" contract="Web.API.Interfaces.IDesignCaseService" />
<endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange"/>
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost/DesignCaseService"/>
</baseAddresses>
</host>
</service>
</services>
<bindings>
<netTcpBinding>
<binding portSharingEnabled="true"></binding>
</netTcpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- 非常重要 -->
<!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false -->
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false"/>
<!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
</system.serviceModel>
3.发布服务,框中非常重要,一定要是net.tcp

 
4.测试服务

 
 
三、错误集锦
1.找不到具有绑定 NetTcpBinding 的终结点的与方案 net.tcp 匹配的基址。注册的基址方案是 [http]。
产生原因:网站没有配置net.tcp协议,网站默认只有http协议
解决方案:按照第一部分,配置net.tcp协议
疑问:网站正确配置了net.tcp协议,还报这个错误?
可能原因:端口不对,比如在IIS中配置的net.tcp协议的端口1000,可能在Visul Studio中 右键打开svc文件,会分配另外一个端口,比如2000,这就可能产生这个问题
解决方案:在IIS中打开svc文件

 
2.已尝试创建到达不支持.Net框架的服务的通道,可能遇到HTTP终结点。需要记录类型"PreambleAck",找到"72"
产生原因:
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>   
当在默认配置中启用http的元数据时,在发布服务页面会出现以http协议的元数据链接,如下图所示:

 
我们使用的是net.tcp协议,而在这里显示的却是http协议
解决方案:
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="false"/> 
 3.由于目标计算机积极拒绝,无法连接。
查看Net.Tcp Listener Adapter服务是否启动
参考资料:http://www.cnblogs.com/Gyoung/archive/2012/12/11/2812555.html
 

[WCF实践]1.WCF使用net.tcp寄宿到IIS中的更多相关文章

  1. WCF使用net.tcp寄宿到IIS中(转)

    一.IIS部分 环境:Windows Server 2008 R2 1.安装WAS,如下图所示:   2.网站net.tcp协议绑定,如下图所示:   3.网站启用net.tcp,如下图所示:   二 ...

  2. WCF使用net.tcp寄宿到IIS中

    一.IIS部分 1. 安装WAS,如下图所示: 2. 网站net.tcp协议绑定,如下图所示: 3. 网站启用net.tcp,如下图所示: 二.WCF代码部分 1. DesignCaseService ...

  3. WCF分布式4:客户端访问寄宿在IIS中的WCF服务

    部署过程比较简单,新建一个站点,指向服务的物理路径,设置一个端口.即可. 新建的站点对应一个应用程序池,设置应用程序池中的.NET版本为4.0 写一个测试客户端,访问IIS中的WCF服务,可能会出现, ...

  4. WCF:如何将net.tcp协议寄宿到IIS

    1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协议的服务,为了让IIS支持net.tcp,必须先安装WAS(Windows Process Activation Service),即 ...

  5. [转]WCF:如何将net.tcp协议寄宿到IIS

    本文转自:http://www.cnblogs.com/Gyoung/archive/2012/12/11/2812555.html 1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协 ...

  6. WCF开发中将net.tcp协议寄宿到IIS的方法

    1 部署IIS 1.1 安装WAS IIS原本是不支持非HTTP协议的服务,为了让IIS支持net.tcp,必须先安装WAS(Windows Process Activation Service),即 ...

  7. WCF入门三[WCF宿主]

    一.概述 WCF程序必须在宿主上运行,也就是WCF服务必须寄宿在某一个windows的进程中,可以是IIS.控制台程序.窗体程序.WAS以及所有.net程序等程序进程中.在我用VS2013创建WCF服 ...

  8. WCF绑定netTcpBinding寄宿到IIS

    继续沿用上一篇随笔中WCF服务类库 Wettery.WcfContract.Services WCF绑定netTcpBinding寄宿到控制台应用程序 服务端 添加WCF服务应用程序 Wettery. ...

  9. 创建WCF服务寄宿到IIS

    一.WCF简介: Windows Communication Foundation(WCF)是由微软开发的一系列支持数据通信的应用程序框架,可以翻译为Windows 通讯开发平台. 整合了原有的win ...

随机推荐

  1. C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现[转载]

    原文:http://outofmemory.cn/code-snippet/35524/AES-with-javascript-java-csharp-python-or-php c#里面的AES加密 ...

  2. [转载]BW增量更新的理解(时间戳)

    在BW中,存在两种数据抽取方式,完全更新与增量更新,完全更新是每次把截至到某个时间的数据全部抽取,增量抽取则只抽取上次和本次抽取之间更新的数据,很显然,增量抽取能够提高系统效率,根据SAP帮 助的说法 ...

  3. Window 通过cmd查看端口占用、相应进程、杀死进程等的命令【转】

    一. 查看所有进程占用的端口  在开始-运行-cmd,输入:netstat –ano可以查看所有进程 二.查看占用指定端口的程序  当你在用tomcat发布程序时,经常会遇到端口被占用的情况,我们想知 ...

  4. Jenkins:”ResourceRules.plist: cannot read resources” error after Xcode 6.1

    在 Custom xcodebuild arguments 处填入: "CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plis ...

  5. Mac安装win7

    为了给老板的mac air装上win7,研究了大致4-5小时,终于搞定! 新版的air安装实在是太不容易了,现在记录如下:   制作硬件:8G优盘一个(至少大于6G空白优盘一个),Macbook ai ...

  6. CISA 信息系统审计知识点 [第二章. IT治理和管理 ]

    第二章.  IT治理和管理 1.  IT治理.管理.安全和控制框架及标准.指南和实践 IT治理是董事会和执行管理层的职责. IT治理的关键因素:保持与业务的战略一致,引导业务价值的实现. IT治理关注 ...

  7. ART:Android 摆脱卡顿的希望?

    与 iOS 相比,Android 的用户体验有个相对糟糕的开始.在很长的时间里,界面一直丑小鸭,卡顿也是挥不去的痛.不过,在 Google 的全力推动,以及硬件厂商的响应下,Android 还是跨越各 ...

  8. linux下 C++ 读取mat文件 MATLAB extern cyphon scipy 未完待续

    1.使用Matlab的C扩展,需要用户安装matlab. g++ -L/media/exsoftware/MATLAB/R2013b/bin/glnxa64 -Wl,-rpath,/media/exs ...

  9. Nginx模块开发时unknown directive "echo"的处理

    实际上,Nginx并没有echo这个指令,所以你贸然使用时,自然会提示说无法识别的指令,处理方法有两个: 方法一是: 从下面连接下载echo-nginx-module模块并安装: https://gi ...

  10. POJ 2078 Matrix

    Matrix Time Limit: 2000MS   Memory Limit: 30000K Total Submissions: 3239   Accepted: 1680 Descriptio ...