Wcf服务与我们的客户端如何建立联系的呢。本文简单记录一下

1、创建我们的wcf服务程序。

第一个wcf服务库是创建我们的wcf库,运行时会单独来托管我们的程序,而非托管在iis下。

第二个wcf服务应用程序则是托管在iis下的。

1、创建我们的第三方客户端。可以理解为应用方公司的程序,可以的网站,桌面程序,甚至控制台。这里以桌面程序(winform)为例。

2、建立两者间联系

3.1、第一种建立两者间联系的方式如下:

直接右键客户端程序(winform)引用,点击添加服务引用

这个服务地址在哪里得到呢,肯定是在我们wcf服务程序中,具体如下。

先打开我们的“导航”页面,姑且这么理解。

上图的url即为所需地址。拷贝到winform的服务引用框中。

点击转到即发现了我们的wcf服务。

然后重新命名命名空间,调用wcf服务,就是通过这个命名空间下的各个client来实现的。这样,我们的wcf服务与第三方客户端间的联系也就建立完成。

3.2、第二种建立两者间联系的方式如下:

第二种方式是通过工具(SvcUtil)来建立,点击vs的工具下的外部工具。

这个工具在我们下载vs时,已经下载好了,所以只需将路径导入进来,也就是下面的命令。

具体路径:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin下的

注意点:上图中使用输出窗口跟提示输入参数一定打上勾,方便操作。

然后就可以在工具下点击这个SvcUtil工具。

这个参数,就是我们第一种方法中的地址,同样填入即可。

点击确定

将会生成一个配置文件,一个.cs

点击

将生成的文件显示在项目(winform)中。

然后打开配置文件,将里面的下面这个节点信息拷贝到App.config即我们客户端直接的配置文件中

这样一来,配置文件算是完成了。第一个方法是通过我们自己命名的命名空间下的各个client作为代理来跟wcf服务之间进行通信,第二个方法没有了这个命名空间,多了一个.cs文件,没错,这次的代理就是由它来提供。

注意点:这里我们需要引用两个命名空间

然后重新生成解决方案,下面这个.cs文件就不会由错误提示了。

小测试,代码如下

以上这个Service1Client就是在上面提到的.cs文件中。

以上代码调用了GetData这个方法,然后看一下对应的wcf服务端的这个方法代码详情。

很简单,就是返回一个字符串。

于是,结果不言而喻。

如果您认为这篇文章还不错或者有所收获,可以点击右下角的【推荐】按钮,因为你的支持是我继续写作,分享的最大动力!
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论。非商业,未授权,贴子请以现状保留,转载时必须保留此段声明,且在文章页面明显位置给出原文连接。

wcf第三方客户端与wcf服务之间调用入门的更多相关文章

  1. 服务注册中心之ZooKeeper系列(二) 实现一个简单微服务之间调用的例子

    上一篇文章简单介绍了ZooKeeper,讲了分布式中,每个微服务都会部署到多台服务器上,那服务之间的调用是怎么样的呢?如图: 1.集群A中的服务调用者如何发现集群B中的服务提供者呢? 2.集群A中的服 ...

  2. 【多线程】java多线程Completablefuture 详解【在spring cloud微服务之间调用,防止接口超时的应用】【未完成】

    参考地址:https://www.jianshu.com/p/6f3ee90ab7d3 示例: public static void main(String[] args) throws Interr ...

  3. Spring Cloud 服务之间调用

    微服务之多个服务间调用 现在又一个学生微服务 user 和 学校微服务 school,如果user需要访问school,我们应该怎么做? 1.使用RestTemplate方式 添加config imp ...

  4. 重温WCF之WCF传输安全(十三)(2)基于SSL的WCF匿名客户端(转)

    转载地址:http://www.cnblogs.com/lxblog/archive/2012/09/13/2683514.html 这一篇我们利用上一篇制作的证书,来演示一个基于SSL的WCF服务, ...

  5. 使用WCF测试客户端 z

    http://blog.csdn.net/u013036274/article/details/50570989 [是什么] WCF测试客户端(WCF Test Client)是一个用来测试WCF服务 ...

  6. C# WCF之用接口创建服务契约、部署及客户端连接

    服务契约描述了暴露给外部的类型(接口或类).服务所支持的操作.使用的消息交换模式和消息的格式.每个WCF服务必须实现至少一个服务契约.使用服务契约必须要引用命名空间System.ServiceMode ...

  7. 启用WCF测试客户端的相关技巧

    在Visual Studio之外打开WCF测试客户端有两种方法:第一种方法是到其所在路径(Visual Studio安装路径\Common7\IDE\WcfTestClient.exe)双击打开.第二 ...

  8. 微服务之间的调用(Ribbon与Feign)

    来源:https://blog.csdn.net/jrn1012/article/details/77837658 使用Eureka作为服务注册中心,在服务启动后,各个微服务会将自己注册到Eureka ...

  9. 跟我一起学WCF(4)——第一个WCF程序

    一.引言 前面几篇文章分享了.NET 平台下其他几种分布式技术,然而前面几种分布式技术专注于某一特定的领域,并且具有不同编程接口,这使得开发人员需要掌握多个API的使用.基于这样的原因,微软在.NET ...

随机推荐

  1. java多线程处理任务

    最近用到使用多线程处理给用户发送站内消息的问题,想到使用java自带的线程池进行处理这个问题,具体如下: 定义一个线程: package com.qlwb.util; import org.apach ...

  2. 导入maven多模块项目 出现的问题

    近日导入maven多模块项目 出现的问题以及解决过程2017年12月04日 20:43:04 守望dfdfdf 阅读数:815 标签: jdkmavenmaven pom.xml 更多个人分类: 工作 ...

  3. 《Head First 设计模式》之迭代器与组合模式——遍历合并的菜单

    迭代器与组合模式(Iterator & Composite) 迭代器:提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示. 组合:允许你将对象组成树形结构来表现“整体.部分” ...

  4. leetcode85 Maximal Rectangle

    思路: 分别按行拆分后将这一行之前的每列叠加起来,然后使用leetcode84https://www.cnblogs.com/wangyiming/p/9620942.html的思路计算. 实现: # ...

  5. 1074 食物链 2001年NOI全国竞赛

    1074 食物链 2001年NOI全国竞赛 时间限制: 3 s 空间限制: 64000 KB 题目等级 : 钻石 Diamond         题目描述 Description 动物王国中有三类动物 ...

  6. vue-cli脚手架构建了项目如何去除Eslint验证(语法格式验证)

    Eslint是一个语法检查工具,但是限制很严格,在vue文件里面很多空格都会导致红线,取消的方式如下: 1.创建工程的时候,提示是否启用eslint检测的. Use ESLint to lint yo ...

  7. 使用纯css实现波浪效果

    有时候我们需要实现水晃动的效果,其实我们可以通过css旋转动画和圆角来实现. 首先来2个div,外层div相对定位,内层div绝对定位,内层div大致位于外层div上半部分.外层div设置一个颜色较深 ...

  8. iOS核心动画高级技巧之图层变换和专用图层(二)

    iOS核心动画高级技巧之CALayer(一) iOS核心动画高级技巧之图层变换和专用图层(二)iOS核心动画高级技巧之核心动画(三)iOS核心动画高级技巧之性能(四)iOS核心动画高级技巧之动画总结( ...

  9. MySQL-数据类型及选择

    一.数据类型 详见:http://www.runoob.com/mysql/mysql-data-types.html 二.类型选择 整形>date,time>enum,char>v ...

  10. OpenCV转为灰度图像 & 访问像素方法

    cvtColor(src, dst, CV_RGB2GRAY); 可转为灰度图像. 彩色图像像素访问:image.at<Vec3b>(i, j)[0],image.at<Vec3b& ...