您的位置:澳门新葡萄京最大平台 > 澳门新葡萄京 > WCF澳门新葡萄京 创建WCF

WCF澳门新葡萄京 创建WCF

发布时间:2019-11-15 13:43编辑:澳门新葡萄京浏览(165)

    一、概述

      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与瑟维斯1.svc。

      3.加多自定义的WCF【服务文件】User.svc,那时候vs2009会自动生成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运营一下尝试,如下图所示,VS2009自动调用了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服务器是长途Computer,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 教程

     

    原来的文章链接:

    本文由澳门新葡萄京最大平台发布于澳门新葡萄京,转载请注明出处:WCF澳门新葡萄京 创建WCF

    关键词: