当前位置 > 首页 > Asp.net

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

2012-12-11 12:27:00来源:Asp.net

1 部署IIS

1.1 安装WAS

IIS原本是不支持非HTTP协议的服务,为了让IIS支持net.tcp,必须先安装WAS(Windows Process Activation Service),即windows进程激活服务。

打开控制面板--程序和功能--打开或关闭windows功能,安装WAS,如图:

安装完毕后在Services窗口中可以到到如下服务:Windows Process Activation Service;Net.Msmq Listener Adapter;Net.Pipe Listener Adapter;Net.Tcp Listener Adapter;Net.Tcp Port Sharing Service.这几个服务。确定Net.Tcp Listener Adapter 与Net.Tcp Port Sharing Service是否已经启动。

1.2  确定WCF是否启用Non-Http支持

同样是在控件面板中打开这个功能,如图:

 

1.3 给站点添加net.tcp绑定

在IIS中,选中你的网站,然后在右边的操作菜单栏中单击绑定,会弹出一个“网站绑定”窗口,点击添加,类型选择net.tcp

1.4 启用net.tcp协议

 选择你的网站,点击“高级设置”,弹出的的窗体中,在“已启用的协议”一栏中手动添加:net.tcp

2 测试服务

 2.1 新建服务

用VS2010新建一个WCF服务,为了简单,我就直接用VS默认生成的作测试了。只有一个GetData方法

下面是配置的Config:

<?xml version="1.0"?>
<configuration>

<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>

<system.serviceModel>
<protocolMapping>
<add scheme="tcp" binding="netTcpBinding"/>
</protocolMapping>
<bindings>
<netTcpBinding>
<binding name="netTcpBindConfig" closeTimeout="00:30:00" portSharingEnabled="true"
openTimeout
="00:30:00" receiveTimeout="00:30:00" sendTimeout="00:30:00"
transactionFlow
="false" transferMode="Buffered" transactionProtocol="OleTransactions"
hostNameComparisonMode
="StrongWildcard" listenBacklog="10">

<readerQuotas maxDepth="2147483647"
maxStringContentLength
="2147483647"
maxArrayLength
="2147483647"
maxBytesPerRead
="2147483647"
maxNameTableCharCount
="2147483647" />
<reliableSession ordered="true" inactivityTimeout="00:01:00" enabled="false" />
<security mode="None">
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign"

  • .net研发工程师面试题,在线交流答案

    2011-6-7 20:50:00

    最近帮朋友准备.net方向 初级研发工程师 面试的题目,在这里记录下面.答案我先卖个关子.呵呵,在下次的博文中公布,不过我更喜欢一种方式,如果各位看官知道答案就留言在文章下面,这样我们可以汇集到大家

  • 多线程之间COM结构体传递(C#)

    2009-12-4 0:13:00

    阅读: 281 评论: 1 作者: ubunoon 发表于 2009-12-03 20:51 原文链接 前言:       此处只提供一个具体的思路,具体的

  • Silverlight 创建自定义外观的按钮

    2010-1-8 15:38:00

    前面一篇博客“ WPF/Silverlight 控件的基本组成 ” 介绍了创建控件模板的一些基础知识,这篇是一个简单演示,演示一个不规则的按钮。 为了简单期间,我们只定义了按钮的鼠标移动到上面

  • ASP.NET编程模型之ASP.NET页面生命周期图解

    2012-4-2 10:28:00

    在网上看到一篇介绍ASP.NET页面生命周期的文章写的不错,特转载如下: ASP.NET编程模型中ASP.NET页面生命周期是指什么呢?它包括什么呢?ASP.NET编程模型之ASP.NET页面

  • JetBrains C# IDE, where did it go?

    2007-4-23 23:22:00

    At the start of last year JetBrians talked about a creating a C# IDE but it all went quiet. Eithe

  • Android实例剖析笔记(八)

    2009-8-30 16:41:00

    摘要: 上一篇文章分析了小游戏Snake的基本框架,本文将分析Android自带的另一个小游戏LunarLander,它与前者的“定时器+系统调用onDraw”架构相比,由于采用了“多线程+强制自行

  • The Weekly Source Code 51 - Asynchronous Database Access and LINQ to SQL Fun

    2010-3-3 12:05:00

    You can learn a lot by reading other people's source code. That's the idea behind this seri

  • ASP.NET - 全球化资源文件[Web Forms]

    2012-5-24 18:11:00

    I:本博文代码示例效果图 好久没来写随笔了.不多说先上大饼! 跟着直接上 [ 代码下载地址 ] II:ASP.NET 资源文件介绍 在ASP.NET特殊文件夹内有那么两个

  • 打靶算法分析

    2007-2-1 15:55:00

    摘要: 阅读全文 jillzhang 2007-02-01 14:37 发表评论

  • Retrieve data from an ASP.Net application using ADO.Net 2.0 connected model

    2010-12-20 5:41:00

    I have been teaching Entity Framework,LINQ to SQL,LINQ to objects,LINQ to XML for some time now. I