澳门黄冠娱乐备用网址一、WCF服务应用程序与WCF服务库,此项目模板基于IIS托管的次第

一、WCF服务应用程序与WCF服务库

一、WCF服务应用程序与WCF服务库

  我们在日常支出的进度中常用的品种项目有“WCF
服务应用程序”和“WCF服务库”。

  小编们在日常支付的进程中常用的类别项目有“WCF
服务应用程序”和“WCF服务库”。

  WCF服务应用程序,是多个得以推行的次第,它有单独的历程,WCF服务类合同的概念,能够平昔看看运转的效应。此项目模板基于IIS托管的前后相继,如本类别的第3节所示。在开拓基于IIS托管的WCF服务程序时,很多见,自学的时候也得以采取那连串型,轻松易懂。

  WCF服务应用程序,是多少个足以试行的程序,它有单独的进程,WCF服务类左券的概念,能够一直观望运维的效劳。此项目模板基于IIS托管的主次,如本种类的首节所示。在支付基于IIS托管的WCF服务程序时,非常多见,自学的时候也得以选拔那连串型,轻便易懂。

  WCF服务库,能够以为是四个分包WCF服务以及协议定义的类库。无法一向运维,你能够在任何系列里引用,在宿主里启用托管那个库,有一些类似于大家在Web项目中动用的类库。思虑WCF服务陈设的时候,服务类的概念为独立的库,可以为别的门类应用。提升代码的复用性。

  WCF服务库,能够认为是一个包括WCF服务以及协议定义的类库。不能够直接运转,你能够在其余类别里援用,在宿主里启用托管那些库,有一点点类似于大家在Web项目中利用的类库。考虑WCF服务规划的时候,服务类的概念为单身的库,可感到其余体系应用。进步代码的复用性。

  当然你也得以修改那么些代码,举个例子把WCF服务程序里的类,移到八个独立的类Curry,或是把类Curry的类移到WCF服务程序中。

  当然你也得以修改那么些代码,譬喻把WCF服务程序里的类,移到多个独立的类Curry,或是把类库里的类移到WCF服务程序中。

二、概述

二、概述

  通过前边的介绍我们领略,WCF在运作时必寄宿在“宿主程序”之上,WCF本人不可见独立运维(每一个WCF服务务必宿主在一个Windows进度中)。.net
提供了三种宿主供WCF运营,WCF依然特别灵活的。

  通过前面包车型地铁牵线大家领略,WCF在运作时必寄宿在“宿主程序”之上,WCF本人不能单独运维(每一种WCF服务必得宿主在一个Windows进度中)。.net
提供了多样宿主供WCF运转,WCF依然特别灵活的。

澳门黄冠娱乐备用网址 1

澳门黄冠娱乐备用网址 2

  WCF的宿主能够是 Windows 服务、COM+应用程序、WAS(Windows Activation
Services,Windows进度激活服务)或IIS、Windows应用程序,或简捷的调控台应用程序及任何.net程序。

  WCF的宿主能够是 Windows
服务、COM+应用程序、WAS(Windows Activation
Services,Windows进度激活服务)或IIS、Windows应用程序,或简捷的调整台应用程序及任何.net程序。

  那节的演示大家再一次确立WCF类库项目为例做示范,名为:WCFLibrary,并删除自动生成的四个文件(IService1.cs、Service1.cs)。如下图所示:

  那节的亲自过问咱们再次创设WCF类库项目为例做示范,名字为:WCFLibrary,并剔除自动生成的四个文件(IService1.cs、Service1.cs)。如下图所示:

澳门黄冠娱乐备用网址 3

澳门黄冠娱乐备用网址 4

  鼠标右键查看项目性质。我们发掘,其实“WCF类库项目”与大家平日营造的“类库项目”都是类库,只但是多了WCF的类库项目在新建时多了多少个dll的援用(System.ServiceModel.dll、System.Runtime.Serialization.dll)和一个自动生成的配置文件(该配置文件只用于调节和测量检验时行使,在WCF寄宿以往会采纳宿主的安顿文件与任何应用程序通讯)。这更申明了我们在做分式程序开垦的时候与我们一向支出的应用程序未有多大的区分,只要大家在应用程序间通讯时“相符WCF的约定”就可以。

  鼠标右键查看项目性质。大家开掘,其实“WCF类库项目”与大家平素创设的“类库项目”都是类库,只可是多了WCF的类库项目在新建时多了三个dll的援引(System.ServiceModel.dll、System.Runtime.塞里alization.dll)和一个自动生成的配备文件(该配置文件只用于调节和测量检验时接纳,在WCF寄宿未来会动用宿主的铺排文件与另外应用程序通讯)。那更验证了大家在做分式程序支付的时候与咱们平日支付的应用程序未有多大的界别,只要大家在应用程序间通讯时“契合WCF的预订”就能够。

  服务端大家还和率先个学科一样(IUser接口与User实现),只创设三个方式做为大家调用的演示代码如下:

  服务端大家还和第三个科目相同(IUser接口与User达成),只组建多少个艺术做为我们调用的亲自过问代码如下:

//添加引用
using System.ServiceModel;

namespace WCFLibrary
{
    [ServiceContract]
    interface IUser
    {
        [OperationContract]
        string ShowName(string name);
    }
}

namespace WCFLibrary
{
    class User : IUser
    {
        public string ShowName(string name)
        {
            string wcfName = string.Format("WCF服务,显示姓名:{0}", name);
            return wcfName;
        }
    }
}

澳门黄冠娱乐备用网址 5

由于原先的合同为I瑟维斯,现在的为IUser,所以布署文件有两处要修改为:

 1 //添加引用
 2 using System.ServiceModel;
 3 
 4 namespace WCFLibrary
 5 {
 6     [ServiceContract]
 7     interface IUser
 8     {
 9         [OperationContract]
10         string ShowName(string name);
11     }
12 }
13 
14 namespace WCFLibrary
15 {
16     class User : IUser
17     {
18         public string ShowName(string name)
19         {
20             string wcfName = string.Format("WCF服务,显示姓名:{0}", name);
21             return wcfName;
22         }
23     }
24 }

<service name=”WCFLibrary.User”>

澳门黄冠娱乐备用网址 6

<endpoint address=”” binding=”wsHttpBinding”
contract=”WCFLibrary.IUser”>

鉴于原先的公约为IService,今后的为IUser,所以安顿文件有两处要修改为:

点击“F5“运行作效果果如下图所示表达成功:

<service
name=”WCFLibrary.User”>

澳门黄冠娱乐备用网址 7

<endpoint address=””
binding=”wsHttpBinding” contract=”WCFLibrary.IUser”>

二、IIS宿主

点击“F5“运营效果如下图所示表明成功:

  大家在率先节中,把WCF寄宿在IIS之上,在IIS中宿主二个劳务的根本优点是在产生客户端乞求时宿主进程会被自动运营,并且你能够信任IIS来治本宿主进度的生命周期。在开拓和动用的进程与Web
Service特别相似。

澳门黄冠娱乐备用网址 8

、调整台应用程序宿主

二、IIS宿主

  创立宿主

  我们在首先节中,把WCF寄宿在IIS之上,在IIS中宿主叁个服务的要害优点是在发出顾客端诉求时宿主进度会被电动运行,并且你能够借助IIS来保管宿主进度的生命周期。在付出和采纳的历程与Web
Service特别相似。

  (1)在缓慢解决方案下新建调控台出口项目 WCFHost_Console。

  具体请参见本类别的首先节课程

  (2)添加 System.ServiceModel.dll 的引用。

、调控台应用程序宿主

  (3)增添 WCF 服务类库(WCFLibrary)的档案的次序援用。

  创立宿主

  (4)成立宿主程序,代码如下:

  (1)在应用方案下新建调节台出口项目
WCFHost_Console。

using System;
using WCFLibrary;
using System.ServiceModel;
using System.ServiceModel.Description;

namespace WCFHost_Console
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建宿主的基地址
            Uri baseAddress = new Uri("http://localhost:8080/User");
            //创建宿主
            using (ServiceHost host = new ServiceHost(typeof(User), baseAddress))
            {
                //向宿主中添加终结点
                host.AddServiceEndpoint(typeof(IUser), new WSHttpBinding(), "");
                //将HttpGetEnabled属性设置为true
                ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
                smb.HttpGetEnabled = true;
                //将行为添加到Behaviors中
                host.Description.Behaviors.Add(smb);
                //打开宿主
                host.Open();
                Console.WriteLine("WCF中的HTTP监听已启动....");
                Console.ReadLine();
                host.Close();
            }
        }
    }
}

  (2)添加 System.ServiceModel.dll
的引用。

(5)运维宿主程序[在顾客端调用时要先运转宿主程序],如下图所示:

  (3)加多 WCF
服务类库(WCFLibrary)的档案的次序援用。

澳门黄冠娱乐备用网址 9

  (4)创设宿主程序,代码如下:

  表达宿主建设构变成功。在上例中用到”ServiceHost”类,这里只是轻松的使用,具体请查看“MSDN
ServiceHost”

澳门黄冠娱乐备用网址 10

  确立客商端

 1 using System;
 2 using WCFLibrary;
 3 using System.ServiceModel;
 4 using System.ServiceModel.Description;
 5 
 6 namespace WCFHost_Console
 7 {
 8     class Program
 9     {
10         static void Main(string[] args)
11         {
12             //创建宿主的基地址
13             Uri baseAddress = new Uri("http://localhost:8080/User");
14             //创建宿主
15             using (ServiceHost host = new ServiceHost(typeof(User), baseAddress))
16             {
17                 //向宿主中添加终结点
18                 host.AddServiceEndpoint(typeof(IUser), new WSHttpBinding(), "");
19                 //将HttpGetEnabled属性设置为true
20                 ServiceMetadataBehavior smb = new ServiceMetadataBehavior();
21                 smb.HttpGetEnabled = true;
22                 //将行为添加到Behaviors中
23                 host.Description.Behaviors.Add(smb);
24                 //打开宿主
25                 host.Open();
26                 Console.WriteLine("WCF中的HTTP监听已启动....");
27                 Console.ReadLine();
28                 host.Close();
29             }
30         }
31     }
32 }

  (1)重新创建实施方案–>Web应用程序项目。

澳门黄冠娱乐备用网址 11

  (2)加多对劳务的引用(在引用上右键–>输入大家定义的劳动宿主的营地址(此处为:http://localhost:8080/User)–&gt;前往–&gt;确定),具体请看第一节。

  (5)运转宿主程序[在顾客端调用时要先运转宿主程序],如下图所示:

澳门黄冠娱乐备用网址 12

澳门黄冠娱乐备用网址 13

  (3)测验程序如下图所示表明成功(注意:必定要先运营大家的宿主程序才行,假若宿主未有展开的话会报错:鉴于指标Computer积极拒绝,不可能连接。)。

  表明宿主建构成功。在上例中用到”ServiceHost”类,这里只是轻松的行使,具体请查看“MSDN
ServiceHost”

澳门黄冠娱乐备用网址 14

  创建客商端

  在这么些示例中大家把Endpoint中的ABC,营地址,Behaviors等都一向写在了代码里,但骨子里运用进度中都以去正视配置文件,为了比较表达大家上面包车型客车例证中会使用布署文件。

  (1)重新确立实施方案–>Web应用程序项目。

**四、Windows应用程序宿主 **

  (2)增加对劳动的引用(在援用上右键–>输入大家定义的服务宿主的营地址(此处为:http://localhost:8080/User)–&gt;前往–&gt;确定),具体请看第一节。

  创立宿主

澳门黄冠娱乐备用网址 15

  (1)在建设方案下新建Windows窗体应用程序项目 WCFHost_Form。

  (3)测验程序如下图所示表达成功(注意:必得求先运维大家的宿主程序才行,倘若宿主未有张开的话会报错:是因为目的计算机积极拒绝,不只怕连接。)。

  (2)添加 System.ServiceModel.dll 的引用。

澳门黄冠娱乐备用网址 16

  (3)增加 WCF 服务类库(WCFLibrary)的体系引用。

  在这几个示例中大家把Endpoint中的ABC,集散地址,Behaviors等都直接写在了代码里,但实则采取进程中都以去信任配置文件,为了比较表明大家下边包车型客车例子中会使用布置文件。

  (4)增多应用程序配置文件App.config。

**四、Windows应用程序宿主 **

  (5)创立宿主程序MainForm窗体,并修改App.config,代码如下:

  创设宿主

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.serviceModel>
    <services>
      <service name="WCFLibrary.User">
        <host>
          <baseAddresses>
            <add baseAddress="http://localhost:8081/User"/>
          </baseAddresses>
        </host>
        <endpoint address="" binding="wsHttpBinding" contract="WCFLibrary.IUser"></endpoint>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <serviceMetadata httpGetEnabled="True"/>
          <serviceDebug includeExceptionDetailInFaults="False"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
</configuration>


using System;
using WCFLibrary;
using System.ServiceModel;
using System.Windows.Forms;
using System.Configuration;

namespace WCFHost_Form
{
    public partial class MainForm : Form
    {
        ServiceHost host;

        public MainForm()
        {
            InitializeComponent();
        }

        //应用程序加载
        private void MainForm_Load(object sender, EventArgs e)
        {
            host = new ServiceHost(typeof(User));
            //打开宿主
            host.Open();
            this.lblState.Text = "WCF中的HTTP监听已启动....";
        }

        //应用程序关闭
        private void MainForm_FormClosed(object sender, FormClosedEventArgs e)
        {
            host.Close();
        }
    }
}

  (1)在缓和方案下新建Windows窗体应用程序项目
WCFHost_Form。

运作程序如下图所示:

  (2)添加 System.ServiceModel.dll
的引用。

澳门黄冠娱乐备用网址 17

  (3)增加 WCF
服务类库(WCFLibrary)的档案的次序援用。

  建设构造客商端

  (4)增添应用程序配置文件App.config。

  同上面包车型客车Console程序一样,这里要援用的地址为:<add
baseAddress=”http://localhost:8081/User"/&gt;

  (5)成立宿主程序MainForm窗体,并修改App.config,代码如下:

  在那几个例子中与Console应用程序分化的是,大家在Console配置是直接写在程序中的,而在本例中大家选拔的是布置文件,不一样在于一旦写在计划文件中等射程序运营时平素到安排文件里收取相关的陈设节去创造ServiceHost类。

澳门黄冠娱乐备用网址 18

五、WAS宿主

 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <configuration>
 3   <system.serviceModel>
 4     <services>
 5       <service name="WCFLibrary.User">
 6         <host>
 7           <baseAddresses>
 8             <add baseAddress="http://localhost:8081/User"/>
 9           </baseAddresses>
10         </host>
11         <endpoint address="" binding="wsHttpBinding" contract="WCFLibrary.IUser"></endpoint>
12       </service>
13     </services>
14     <behaviors>
15       <serviceBehaviors>
16         <behavior>
17           <serviceMetadata httpGetEnabled="True"/>
18           <serviceDebug includeExceptionDetailInFaults="False"/>
19         </behavior>
20       </serviceBehaviors>
21     </behaviors>
22   </system.serviceModel>
23 </configuration>
24 
25 
26 using System;
27 using WCFLibrary;
28 using System.ServiceModel;
29 using System.Windows.Forms;
30 using System.Configuration;
31 
32 namespace WCFHost_Form
33 {
34     public partial class MainForm : Form
35     {
36         ServiceHost host;
37 
38         public MainForm()
39         {
40             InitializeComponent();
41         }
42 
43         //应用程序加载
44         private void MainForm_Load(object sender, EventArgs e)
45         {
46             host = new ServiceHost(typeof(User));
47             //打开宿主
48             host.Open();
49             this.lblState.Text = "WCF中的HTTP监听已启动....";
50         }
51 
52         //应用程序关闭
53         private void MainForm_FormClosed(object sender, FormClosedEventArgs e)
54         {
55             host.Close();
56         }
57     }
58 }

  Windows 进度激活服务 (WAS)
概述
.aspx)  

澳门黄冠娱乐备用网址 19

  IIS7允许通过HTTP外的构和举行激活和网络通讯。此条件符合开荒可经过WCF帮忙的别的互联网左券(包含http、net.tcp、net.pipe、net.msmq)举办通信的WCF服务。陈设轻松、管理有助于,这么些互联网合同在配备时可像Http同样,间接丢到IIS7上就可以,大家在底下的例证中以net.tcp为协商为例。IIS7以下的版本只好协理Http的通讯。

   运维程序如下图所示:

  1、确认保障已安装IIS7的激活零部件

澳门黄冠娱乐备用网址 20

  在动用WAS宿主时,必需确认保证IIS7的激活零部件安装好。打开“调控面板”–>“展开或关闭Windows成效”–>“成效”,作者的机械春日经安装过,如下图所示(WCF激活与非WCF激活):

  创设顾客端

澳门黄冠娱乐备用网址 21

  同上边的Console程序同样,这里要引用的地址为:<add
baseAddress=”http://localhost:8081/User"/&gt;

  若无安装,点击“增添新作用”,然后勾选“WCF激活”,如下图所示:

  在这些例子中与Console应用程序分裂的是,大家在Console配置是直接写在前后相继中的,而在本例中大家选用的是陈设文件,不一样在于一旦写在布署文件中等射程序运营时一直到布置文件里抽取相关的布置节去成立ServiceHost类。

澳门黄冠娱乐备用网址 22

五、WAS宿主

  安装成功后大家展开IIS,点击“默许网址(任一个网址就能够)”–>“绑定”–>“加多”,在项目中会现身非IIS帮衬的别的体系。如下图所示

  Windows 进度激活服务 (WAS)
概述
  

澳门黄冠娱乐备用网址 23

  IIS7允许通过HTTP外的说道实行激活和网络通信。此条件符合开垦可通过WCF帮衬的其余互连网左券(富含http、net.tcp、net.pipe、net.msmq)举办通讯的WCF服务。铺排轻巧、管理有帮衬,那几个网络公约在布署时可像Http同样,直接丢到IIS7上就能够,大家在底下的例子中以net.tcp为协商为例。IIS7以下的本子只可以接济Http的通讯。

  表明安装成功。

  1、确认保证已设置IIS7的激活零部件

  2、增添net.tcp的网址绑定

  在应用WAS宿主时,必需保证IIS7的激活零部件安装好。展开“调整面板”–>“打开或关闭Windows效能”–>“效率”,笔者的机器上一度安装过,如下图所示(WCF激活与非WCF激活):

  在上海体育地方中,我们选择项目net.tcp,然后在绑定音信中填入“808:*”,点击明显。

澳门黄冠娱乐备用网址 24

  3、开通net.tcp的协议 

  若无设置,点击“增多新作用”,然后勾选“WCF激活”,如下图所示:

  在安装成功还要在内定的网址上绑定了net.tcp未来,大家还要开通.net.tcp公约,点击大家要配置WCF的网址,在IIS管理器的操作效率区有一项“高等设置”点击后边世如下图所示高等配置的窗体

澳门黄冠娱乐备用网址 25

澳门黄冠娱乐备用网址 26

  安装成功后大家展开IIS,点击“私下认可网址(任二个网址就能够)”–>“绑定”–>“增加”,在品种中会出现非IIS援助的任何连串。如下图所示

  在启用的合计中增添net.tcp公约(原来只对http公约协理,未来把tcp公约追加上去),中间用逗号隔开开,如上海教室所示。

澳门黄冠娱乐备用网址 27

  注意:那多少个步骤三个也不能够少,不然会产出:“找不到具备绑定
NetTcpBinding 的终结点的与方案 net.tcp 相配的基址。注册的基址方案是
[http]
”的错误音讯。

  表明安装成功。

   4、建设构造服务程序

  2、增添net.tcp的网站绑定

  (1)在缓慢解决方案下新建WCF服务应用程序项目 WCFHost_WAS。

  在上海教室中,我们选拔品种net.tcp,然后在绑定信息中填入“808:*”,点击显然。

  (2)创设IUser与User,代码同例二平等。

  3、开通net.tcp的协议 

  (3)修改配置文件代码如下:

  在设置成功还要在钦点的网址上绑定了net.tcp以后,大家还要开通.net.tcp协议,点击大家要配置WCF的网址,在IIS管理器的操作效用区有一项“高档设置”点击后出现如下图所示高端配置的窗体

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.serviceModel>
    <bindings>
      <netTcpBinding>
        <binding name="netTcpBindConfig">
          <security mode="None">
            <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
            <message clientCredentialType="Windows" />
          </security>
        </binding>
      </netTcpBinding>
    </bindings>
    <services>
      <service behaviorConfiguration="MyBehavior" name="WCFHost_WAS.User">
        <endpoint address="" binding="netTcpBinding" contract="WCFHost_WAS.IUser" bindingConfiguration="netTcpBindConfig"></endpoint>
        <!--元数据交换的终结点-->
        <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" ></endpoint>
      </service>
    </services>
    <behaviors>
      <serviceBehaviors>
        <behavior name="MyBehavior" >
          <serviceMetadata/>
          <serviceDebug includeExceptionDetailInFaults="true" />
          <dataContractSerializer maxItemsInObjectGraph="6553600"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>

</configuration>

澳门黄冠娱乐备用网址 28

(5)安顿服务

  在启用的合计中拉长net.tcp合同(原本只对http公约扶助,今后把tcp左券追加上去),中间用逗号隔断开,如上海教室所示。

  像任何的Web应用程序同样,把相关的文本丢到劳动器端钦命目录就可以。

  注意:那几个步骤三个也不能够少,否则会产出:“找不到全部绑定
NetTcpBinding 的终结点的与方案 net.tcp 相称的基址。注册的基址方案是
[http]
”的错误音讯。

  鼠标右键浏览User.svc,如现如下所示:

   4、创立服务程序

澳门黄冠娱乐备用网址 29

  (1)在缓慢解决方案下新建WCF服务应用程序项目
WCFHost_WAS。

  表达安顿成功,如上所示的劳务地点为:net.tcp://服务器名/User.svc/mex

  (2)创设IUser与User,代码同例二同一。

  (6)营造客商端

  (3)修改配置文件代码如下:

  创立客商端也与其他的同样,如下图所示:

澳门黄冠娱乐备用网址 30

澳门黄冠娱乐备用网址 31

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <configuration>
 3   <system.serviceModel>
 4     <bindings>
 5       <netTcpBinding>
 6         <binding name="netTcpBindConfig">
 7           <security mode="None">
 8             <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
 9             <message clientCredentialType="Windows" />
10           </security>
11         </binding>
12       </netTcpBinding>
13     </bindings>
14     <services>
15       <service behaviorConfiguration="MyBehavior" name="WCFHost_WAS.User">
16         <endpoint address="" binding="netTcpBinding" contract="WCFHost_WAS.IUser" bindingConfiguration="netTcpBindConfig"></endpoint>
17         <!--元数据交换的终结点-->
18         <endpoint address="mex" binding="mexTcpBinding" contract="IMetadataExchange" ></endpoint>
19       </service>
20     </services>
21     <behaviors>
22       <serviceBehaviors>
23         <behavior name="MyBehavior" >
24           <serviceMetadata/>
25           <serviceDebug includeExceptionDetailInFaults="true" />
26           <dataContractSerializer maxItemsInObjectGraph="6553600"/>
27         </behavior>
28       </serviceBehaviors>
29     </behaviors>
30   </system.serviceModel>
31 
32 </configuration>

  大家那时候看客商端的配备文件:

澳门黄冠娱乐备用网址 32

<client>
      <endpoint address="http://localhost:8080/User" binding="wsHttpBinding"
        contract="WCFHost_Console.IUser" />
      <endpoint address="http://localhost:8081/User" binding="wsHttpBinding"
        bindingConfiguration="WSHttpBinding_IUser" contract="WCFHost_Form.IUser"
        name="WSHttpBinding_IUser">
        <identity>
          <userPrincipalName value="WIN-EOUTAA4CP4O\Administrator" />
        </identity>
      </endpoint>
      <endpoint address="net.tcp://win-eoutaa4cp4o/User.svc" binding="netTcpBinding"
        bindingConfiguration="NetTcpBinding_IUser" contract="WCFHost_WAS.IUser"
        name="NetTcpBinding_IUser" />
    </client>

  (5)铺排服务

大家在三个Web应用程序中调用了两种不一样宿主的劳动。 

  像其余的Web应用程序一样,把相关的文书丢到服务器端内定目录就能够。

七、总结

  鼠标右键浏览User.svc,如现如下所示:

  通过下边包车型地铁多少个例子,我们兑现了调节台宿主、Form宿主、WAS宿主(基于TCP合同)的贯彻。在骨子里的开销进程中,有的时候候大家还有也许会用到基于Windows服务的宿主,但繁多份都使用IIS做宿主,方便、飞速。

澳门黄冠娱乐备用网址 33

 

  表明安顿成功,如上所示的劳务地点为:net.tcp://服务器名/User.svc/mex

原稿链接:http://www.cnblogs.com/iamlilinfeng/archive/2012/10/01/2706353.html

  (6)塑造顾客端

  确立顾客端也与另外的一样,如下图所示:

澳门黄冠娱乐备用网址 34

  大家那时候看客商端的布置文件:

澳门黄冠娱乐备用网址 35

    <client>
      <endpoint address="http://localhost:8080/User" binding="wsHttpBinding"
        contract="WCFHost_Console.IUser" />
      <endpoint address="http://localhost:8081/User" binding="wsHttpBinding"
        bindingConfiguration="WSHttpBinding_IUser" contract="WCFHost_Form.IUser"
        name="WSHttpBinding_IUser">
        <identity>
          <userPrincipalName value="WIN-EOUTAA4CP4O\Administrator" />
        </identity>
      </endpoint>
      <endpoint address="net.tcp://win-eoutaa4cp4o/User.svc" binding="netTcpBinding"
        bindingConfiguration="NetTcpBinding_IUser" contract="WCFHost_WAS.IUser"
        name="NetTcpBinding_IUser" />
    </client>

澳门黄冠娱乐备用网址 36

  大家在叁个Web应用程序中调用了两种差别宿主的劳动。 

七、总结

  通过上边的多少个例子,大家落到实处了调节台宿主、Form宿主、WAS宿主(基于TCP合同)的达成。在其实的支付进程中,不经常候我们还有或然会用到基于Windows服务的宿主,但大许多份都利用IIS做宿主,方便、快速。

八、代码下载

  10 WCF
教程

九、版权

  转发请注脚出处:http://www.cnblogs.com/iamlilinfeng

相关文章