知道WCF的地址用工厂通道方式快速调用WCF
1 using System;
2 using System.ServiceModel;
3 using System.ServiceModel.Description;
4 using System.ServiceModel.Channels;
5
6 namespace ZhiYuan.ServiceProxy
7 {
8 public class WCFClient<T>
9 {
10
11 public static T CreateService(Binding bind, EndpointAddress address)
12 {
13 ChannelFactory<T> channelFactory = new ChannelFactory<T>(bind);
14 return channelFactory.CreateChannel(address);
15 }
16 public static T CreateService(string uri)
17 {
18
19 #region TCP/IP方案
20 // NetTcpBinding bind = new NetTcpBinding();
21 // EndpointAddress address = new EndpointAddress("net.tcp://127.0.0.1:1785/Service");
22 // EndpointAddress metaAddress = new EndpointAddress("net.tcp://127.0.0.1:1785/Service/MEX");
23 #endregion
24
25 BasicHttpBinding bind = new BasicHttpBinding();
26 bind.MaxBufferSize = int.MaxValue;
27 bind.MaxReceivedMessageSize = int.MaxValue;
28 bind.MaxBufferPoolSize = int.MaxValue;
29 bind.ReaderQuotas.MaxArrayLength = int.MaxValue;
30 bind.ReaderQuotas.MaxBytesPerRead = int.MaxValue;
31 bind.ReaderQuotas.MaxDepth = int.MaxValue;
32 bind.ReaderQuotas.MaxNameTableCharCount = int.MaxValue;
33 bind.ReaderQuotas.MaxStringContentLength = int.MaxValue;
34
35 bind.SendTimeout = new TimeSpan(0,5,60);
36 EndpointAddress address = new EndpointAddress(uri);
37
38 ChannelFactory<T> channelFactory = new ChannelFactory<T>(bind);
39 return CreateService(bind, address);
40 }
41
42 /// <summary>
43 /// 采用通道工厂的方式生成客户端服务对象实例
44 /// </summary>
45 /// <param name="bind"></param>
46 /// <param name="address"></param>
47 public ZhiYuan.ServiceContract.Member.ILoginService CreateLoginService()
48 {
49 return WCFClient<ZhiYuan.ServiceContract.Member.ILoginService>.CreateService("http://localhost:1785/Member/LoginService.svc");
50
51 }
52
53
54 public ZhiYuan.ServiceContract.Member.IMemberService CreateMemberService()
55 {
56
57 return WCFClient<ZhiYuan.ServiceContract.Member.IMemberService>.CreateService("http://localhost:1785/Member/MemberService.svc");
58
59
60 }
61
62 }
63 }
知道WCF的地址用工厂通道方式快速调用WCF的更多相关文章
- 记录:Web无引用无配置方式动态调用WCF服务
这几年一直用WebApi较多,最近项目中有个需求比较适合使用WCF,以前也用过JQuery直接调用Wcf的,但是说实话真的忘了… 所以这次解决完还是花几分钟记录一下 WCF服务端:宿主在现有Win服务 ...
- WCF入门教程(四)通过Host代码方式来承载服务 一个WCF使用TCP协议进行通协的例子 jquery ajax调用WCF,采用System.ServiceModel.WebHttpBinding System.ServiceModel.WSHttpBinding协议 学习WCF笔记之二 无废话WCF入门教程一[什么是WCF]
WCF入门教程(四)通过Host代码方式来承载服务 Posted on 2014-05-15 13:03 停留的风 阅读(7681) 评论(0) 编辑 收藏 WCF入门教程(四)通过Host代码方式来 ...
- WCF实例管理的三种方式
很多情况下,我们都需要控制wcf服务端对象的初始化方式,用来控制wcf实例在服务端的存活时间. Wcf框架提供了三种创建wcf实例的方式. WCF服务对象实例化基础 在普通的WCF请求和相应过程中,将 ...
- [转]学习 WCF (6)--学习调用WCF服务的各种方法
转自:http://www.cnblogs.com/gaoweipeng/archive/2009/07/26/1528263.html 作者这篇博文写得很全面. 根据不同的情况,我们可以用不同的方法 ...
- 在 Node.js 上调用 WCF Web 服务
摘要:有时我们需要在WCF中做一些复杂数据处理和逻辑判断等,这时候就需要在NodeJS中调用WCF服务获取数据,这篇文件介绍如何在Node中调用WCF服务获取数据. Node项目中调用WCF服务获取数 ...
- 调用WCF服务的几种方式
首先发布了一个名为PersonService的WCF服务.服务契约如下: [ServiceContract] public interface IPersonService { ...
- C#动态调用WCF接口,两种方式任你选。
写在前面 接触WCF还是它在最初诞生之处,一个分布式应用的巨作. 从开始接触到现在断断续续,真正使用的项目少之又少,更谈不上深入WCF内部实现机制和原理去研究,最近自己做一个项目时用到了WCF. 从这 ...
- 创建一个简单的WCF程序2——手动开启/关闭WCF服务与动态调用WCF地址
一.创建WCF服务器 1.创建WCF服务器的窗体应用程序 打开VS2010,选择文件→新建→项目菜单项,在打开的新建项目对话框中,依次选择Visual C#→Windows→Windows窗体应用程序 ...
- wcf系列(一)--- 寄宿方式
一.自我寄宿(self-hosting) 1.wcf采用基于终结点(Endpoint)的通信手段:终结点由:地址(Address)+绑定(Binding)+契约(Contract)组成: Enpoi ...
随机推荐
- The Qt Resource System
The Qt Resource System The Qt resource system is a platform-independent mechanism for storing binary ...
- thymeleaf+bootstrap,onclick传参实现模态框中遇到的错误
一个困扰了N久的问题... 网上大多帖子是这么写的 onclick调javascript函数时,不能直接使用onclick=“editUser(${prod.id})”,这样会报错,需要修改成如下的格 ...
- 06 Locking and Latching
本章提要---------------------------------------------------------------6,7,8,9,10,11 这 6 章要细看, 从本章开始how ...
- 没有启动 ASP.NET State service错误的解决方法
具体错误如下: 异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求.请确保已启动 ASP.NET State service,并且客户端和服务器端 ...
- there are 0 datanode.....
当时执行hive的导入数据load data inpath "XXXX" into table.....的时候发现总是导不进去,最后试了下简单的从Linux 到 HDFS上传文件 ...
- 64位程序,long*转long 出错
原因: long*在64位程序中占8个字节,long占4个字节.强转会出错. 解决方法: 把long用long long替换,long long 占8个字节
- CentOS7下Tomcat启动慢的原因及解决方案
现象 在一次CentOS 7系统中安装Tomcat,启动过程很慢,需要几分钟,经过查看日志,发现耗时在这里:是session引起的随机数问题导致的.Tocmat的Session ID是通过SHA1算法 ...
- dos中执行cd命令切换不到对应的盘解决方法
可以使用cd命令,不过需要加参数 /d,如: cd /d e:
- hbase集群部分节点HRegionServer启动后自动关闭的问题
参考链接 http://f.dataguru.cn/thread-209058-1-1.html 我有4HRegionServer节点,1个master,其中3个是unbuntu 系统,2个节点是ce ...
- Digest Authentication 摘要认证
“摘要”式认证( Digest authentication)是一个简单的认证机制,最初是为HTTP协议开发的,因而也常叫做HTTP摘要,在RFC2671中描述.其身份验证机制很简单,它采用杂凑式(h ...