• WCF


    序言

    接下来讲解一下,如何创建WCF客户端实现与WCF服务端的通信。这里我们主要讲的是与上一节中创建的WCF服务端的通信。

    方法一、通过微软自带的svcutil工具生成客户端代理类的方式

    创建WCF服务端传送门

    1、我们添加一个控制台应用程序,命名为Client;

    2、以管理员身份启动Host.exe;

    3、接下来我们使用微软自带的svcutil来生成Host服务的客户端代理类。以管理员身份启动VS自带的开发人员工具,并将目录转到Client项目文件夹下。

      cd C:UsersJeremyDesktopWcfDemoClient

      svcutil http://localhost:8800/?wsdl /o:Client.cs

    4、将生成的2个文件复制到Client项目中,或者在Client添加现有项。并添加System.ServiceModel;

    5、删除现有的App.config文件,并重命名output.config为App.config;

    6、在Client对应的Program.cs下编写如下程序,然后启动Client程序。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Client
    {
        class Program
        {
            static void Main(string[] args)
            {
                WcfServicesClient client = new WcfServicesClient();
                Console.WriteLine(client.Add(10, 20));
                Console.ReadKey();
            }
        }
    }

    测试结果

    总结

    1、我们可以借助微软自带的svcutil工具来生成服务端对应的客户端代理类(以管理员身份启动和修改服务端对应的名称);

      svcutil http://localhost:8800/?wsdl /o:Client.cs

    2、生成代理类时,服务端需要先开启(以管理员身份启动); 

    方法二、通过添加服务引用的方式

    这种方法和WebService的方式类似,不做详细说明。

    1、项目引用上右击选择添加服务引用;

    2、编写如下代码,实现客户端与服务端的通信。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace Client2
    {
        class Program
        {
            static void Main(string[] args)
            {
                ServiceReference2.WcfServicesClient client = new ServiceReference2.WcfServicesClient();
                Console.WriteLine(client.Add(10, 30));
                Console.ReadKey();
            }
        }
    }

    注意:同样需要添加System.ServiceModel引用。

      作者:Jeremy.Wu
      出处:https://www.cnblogs.com/jeremywucnblog/
      本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    世界充满神秘的不平衡:创业中的“二八”法则
    树立个人品牌:从名字开始
    房子,心中的痛
    今生,谁会是我最美丽的新娘
    失败不是创业的结束,因为有了你们,这世界才璀璨(转载)
    再等五百年
    名字作诗:为您的名字增添一份色彩
    揭开爱情的外衣
    李子楠(帮客户名字作诗)
    爱上你,早已是命中注定
  • 原文地址:https://www.cnblogs.com/jeremywucnblog/p/12813808.html
Copyright © 2020-2023  润新知