WCF 创建WCF

2019-10-08 15:35 来源:未知

一、概述

  Windows Communication Foundation(WCF)是由微软前行的一组数据通讯的应用程序开拓接口,能够翻译为Windows通信接口,它是.NET框架的一有的。由 .NET Framework 3.0 初阶引进。

  WCF的最后目的是因此进度或不一样的系统、通过本地互连网或是通过Internet收发客商和服务中间的新闻。

  WCF合併了Web服务、.net Remoting、消息队列和Enterprise Services的意义并集成在Visual Studio中。

  WCF特意用于面向服务支出。

网络游戏新,二、基于Asp.net 的应用程序开拓与面向服务支付

网络游戏新 1

  在依据Asp.net 的应用程序开垦中,大家由客商机的浏览器访谈应用程序服务器,然后经过应用程序服务器中的数据库连接去老是数据库服务器,读取或是操作数据,一时候恐怕会多贰个文件服务器。我们能够考查到,基本上全体的行使都位于了一台服务器上,但对此三个,由于作业上的要求(如:与表面系统互相),一台服务器很难支撑具备的利用。大家再看上面包车型大巴图:

网络游戏新 2

  客商机使用浏览器访问服务器A,服务器A为了职业须要与另外各类应用安插在劳务器B、C、D....再经过WCF技术并行通讯,互相访谈...但是面向服务的收益不止在此,他还提供了不相同语言差别操作系统的可交互性..由于本文不是介绍SOA的文章,感兴趣的同校能够参见:SOA

三、第一个WCF程序

  1. 新确立空白实施方案,并在缓和方案中新建项目,项目项目为:WCF服务应用程序。创建实现后如下图所示:

网络游戏新 3

  2.去除系统生成的三个文本IService1.cs与Service1.svc。

  3.增添自定义的WCF【服务文件】User.svc,此时vs二零零六会自动生成WCF接口文件IUser.cs,大家在IUser中定义WCF方法ShowName,在User.svc.cs对该接口的点子实行落到实处。

代码如下:

using System.ServiceModel;

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


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

世家能够观望,在WCF中的接口与普通接口的界别只在意七个上下文,别的的和大家寻常上学的接口一样。定义那一个上下文要增添System.ServiceModel的援用。

[ServiceContract],来证实接口是三个WCF的接口,要是不加的话,将不可能被表面调用。

[OperationContract],来评释该方法是一个WCF接口的不二等秘书诀,不加的话同上。 

那会儿我们的首先个WCF服务程序就建设构造好了,将User.svc“设为开端页”,然后F5周转一下研究,如下图所示,VS2010电动调用了WCF的客户端测验工具以便大家测量检验程序:

网络游戏新 4

  大家双击上海教室中的 ShowName() 方法,出现如下图:

网络游戏新 5

  在呼吁窗口中的值中输入参数“你的人名”,然后点击“调用”,在响应窗口中会出现再次回到值“WCF服务,展现姓名:你的全名”,表明测量试验成功,点击上边包车型客车XML也得以看来XML的多寡传输。大家前天确立好了劳务的应用程序和事务逻辑,即极其轻易的打字与印刷姓名的方法,测验也不辱职责了。那么大家怎么用吧?

四、场景

  我们规划的风貌是在生育中平时应用的地方,把WCF程序寄宿在IIS之上。借使场景如下:A服务器和B服务器。我们把我们恰好构建的WCF程序“陈设”在B服务器上(本课程的A,B服务器都放是本身要好的一台机器),我们的对象是在A服务器的应用程序来访谈B服务器的WCF程序,落成服务器端的应用程序通信。

五、将WCF程序寄宿在B服务器的IIS之上

  第一大家将WCF应用程序发表一下,然后布置在B服务器的IIS之上,如下图所示:

网络游戏新 6

  鼠标右键浏览Uesr.svc,在游览器中冒出如下图所示,表明服务配置成功。

网络游戏新 7

   上海图书馆中的即为大家要援用的劳务地点。

六、在顾客端[A服务器]创造服务的援引

  咱俩那边以Web应用程序为例,建构地物理地址为本机,但是大家能够想像成B服务器是长距离计算机,localhost为二个别样的IP地址。

  新建实施方案,何况创办ASP.NET Web应用程序的花色。命名叫:WCFClient,如下图所示:

 

网络游戏新 8

  (1)新建Asp.net页面,命名为:WcfTest.aspx。

  (2)增添在第五步中配备的劳务的引用。如下图所示:

网络游戏新 9

  此时弹出增添服务援用的窗体,如下图所示:

网络游戏新 10

  大家在地方里写上我们下榻在IIS上的WCF服务的地方服务路线,此处为:,在名称空间处填写WCFService[此称呼空间要在底下的客商端中援引]然后点击“前往”-->“明确”开关。此时大家完结了对服务的援用。我们再度查看解决方案,里面多了ServiceReferences的公文夹,通过能源管理器张开后当中多了些文件,这个文件用于客商端向服务端的调用,现在先不用管她。

 七、使用WCF服务端的格局

  WcfTest.aspx的代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

//引用WCF服务的名称空间
using WCFClient.WCFService;

namespace WCFClient
{
    public partial class WCFTest : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void btnClick(object sender, EventArgs e)
        {
            UserClient user = new UserClient();
            string result = user.ShowName(this.txtName.Text);
            Response.Write(result);
        }
    }
}

下边中的UserClient类是在抬高援用的时候生成的劳务端User类的客户端代理类,平常客户端代理类名称都会是**Client。大家运营一下看下效果。

网络游戏新 11

  通过以上的例子,大家成功了由A服务器的施用向B服务器中WCF提供的点子的调用。这么些例子相比较简单,对于时常开采B/S结构应用程序的同班们的话相比好领悟。

八、说明:因为网络的入门教程非常少,本学科只做入门,前面会持续讲些另外入门的事物,深切的请看园子里:Artech 小弟的文章。

九、代码下载:

  10 WCF 教程

 

原稿链接:

TAG标签:
版权声明:本文由澳门国际银河备用网址发布于网络游戏新,转载请注明出处:WCF 创建WCF