首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

增加WCF服务中的超时值

在 WCF 服务中,超时值是用于控制服务在等待请求完成时所允许的最长时间。如果在指定的超时时间内,服务未能完成请求,则会引发超时异常。

以下是增加 WCF 服务中的超时值的方法:

  1. 在代码中设置超时值:

可以在调用 WCF 服务的代码中设置超时值,如下所示:

代码语言:csharp
复制
using (ChannelFactory<IService> factory = new ChannelFactory<IService>("Service"))
{
    IService service = factory.CreateChannel();
    factory.Endpoint.Binding.SendTimeout = TimeSpan.FromMinutes(10);
    service.CallService();
}
  1. 在配置文件中设置超时值:

可以在 WCF 服务的配置文件中设置超时值,如下所示:

代码语言:xml<system.serviceModel>
复制
  <bindings>
   <basicHttpBinding>
     <binding name="BasicHttpBinding_IService" sendTimeout="00:10:00" />
    </basicHttpBinding>
  </bindings>
 <client>
   <endpoint address="http://localhost:8080/Service" binding="basicHttpBinding"
      bindingConfiguration="BasicHttpBinding_IService" contract="IService"
      name="BasicHttpBinding_IService" />
  </client>
</system.serviceModel>

在上面的示例中,超时值被设置为 10 分钟。

总之,增加 WCF 服务中的超时值可以帮助服务在等待请求完成时具有更长的时间。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WCF技术剖析之二十: 服务WCF体系是如何被描述?

任何一个程序都需要运行于一个确定进程,进程是一个容器,其中包含程序实例运行所需资源。同理,一个WCF服务监听与执行同样需要通过一个进程来承载。...服务寄宿方式大体分两种:一种是为一组WCF服务创建一个托管应用程序,通过手工启动程序方式对服务进行寄宿,所有的托管应用程序均可作为WCF服务宿主,比如Console应用、Windows Forms...无论采用哪种寄宿方式,在为某个服务创建ServiceHost过程WCF框架内部会执行一系列操作,其中最重要步骤就是为服务创建服务描述(Service Description)。...客户端行为体现WCF如何进行服务调用方式,而服务端行为则体现了WCF请求分发方式。...为此,增加了一个新方法:ApplyClientBehavior。

95760

WCF系列教程之WCF会话

本文参考自http://www.cnblogs.com/wangweimutou/p/4516224.html,纯属读书笔记,加深记忆 一、WCF会话简介 1、在WCF应用程序,回话将一组消息相互关联...2、WCF回话机制通过设置服务协定ServiceContract上SessionMode枚举值来设置服务协定是否要求、允许或者拒绝基于回话绑定.枚举值有以下三种: (1)、Allowed:允许回话...二、WCF回话和Asp.Net回话 1、WCF回话主要功能有以下: (1)、他们由调用程序显示启动或者关闭 (2)、会话期间传递消息按照接收消息顺序进行处理。...2、Asp.Net回话由System.Web.SessionState.HttpSessionState 类提供功能,它主要功能如下: (1)、Asp.Net回话是由服务器启动 (2)、Asp.Net...1、WCF服务层搭建:新建契约层、服务层、和WCF宿主,添加必须引用(这里不会参考本人前面的随笔),配置宿主,生成解决方案,打开Host.exe,开启服务

75750

WCF服务批量寄宿

如果采用自我寄宿方式,我们需要为每个寄宿服务创建ServiceHost对象。但是一个应用往往具有很多服务需要被发布,基于单个服务ServiceHost创建将会变成一个很繁琐事情。...我们可以将需要需要批量寄宿服务类型定义在配置文件。很多人喜欢直接采用作为自定义配置,但是我个人是既不推荐这种做法,我觉得自定义结构化配置节是更好选择。...在构造函数,我们通过加载BatchingHostingSettings配置节方式获取需要批量寄宿服务类型,并为之创建ServiceHost。...三个服务以及包含终结点定义在如下配置,而三个服务类型同时被定义在了我们自定义配置节下。...为了确认三个服务对应ServiceHost确实被创建并被开启,我通过如下代码注册了ServiceHostCollection每个ServiceHostOpened事件。

522100

WCF 4.0动态发现服务WS-Discovery

WCF 3/3.5 ,当我们要调用一个服务时,必须事先知道该服务地址,然后通过服务代理用双方约定好契约与远程服务进行交互。...现在,WCF 4.0提供了发现服务支持,当我们再想调用一个服务时,没必要去知道该服务具体地址,WCF 4.0实现了OASISWS-Discovery标准,相关类定义在System.ServiceModel.Discovery...只需要利用 System.ServiceModel.Discovery 命名空间下相关类就可以实现两种方式动态发现服务: Ad hoc Mode:简单理解,就是服务启动时就向网络广播Hello消息,...Managed Mode:简单理解,就是所有服务事先在一个叫 Discovery Proxy 地方登记,然后所有调用方发送查找请求给 Discovery Proxy 来查找并调用相关服务模式。...WCF 4.0要动态发现服务,用 Ad hoc Mode 实现起来还是比较简单

92850

使用WCF进行跨平台开发之二(IIS托管WCF服务并使用php平台调用)1.系统必备2.在IIS托管WCF服务3.使用PHP调用托管在IISWCF服务

上一篇,使用控制台托管了WCF服务,但是如果想从PHP和java平台调用,必须将其托管到IIS(并不是必须,还是有其他方式 比如windows azure) 1.系统必备      首先,必须打开...2.在IIS托管WCF服务      在IIS默认网站添加应用程序emp,并在高级设置,设置应用程序池为“ASP.NET v4.0”,并设置默认网站右键--编辑版定,在http类型编辑IP地址和主机名...在新建虚拟目录对应实际目录,添加web.config文件,配置wcf服务和终结点,并打开元数据公开,然而,因为这里不是使用常用svc文件托管服务,所以需要serviceActivations节点配置服务...3.使用PHP调用托管在IISWCF服务 在PHP服务打开浏览器,并浏览http://192.168.11.1/emp/EmployeeManagement.svc测试服务是否托管正常。 ?...> 开启php服务器,访问页面,出结果: ? 下一章将续写java访问WCF服务具体操作,可是已经到饭点啦。先做个决定。。。。。

2K70

WCF集合类型

在.net,各种类型集合均实现了IEnumerable或者IEnumerable接口,一个数据契约数据成员可以是一个集合类型,服务契约也可以定义直接与集合交互操作,但是这都是.net所特有的...,WCf不能在元数据公开它们,然后WCF专门为集合提供了编组原则。      ...,那么只要提供集合包含了Add方法,并且符合以下签名一种,WCF就能够自动地将集合规范为数组类型。      ...当服务一方处理集合类型时,服务另外一方若处理数组类型,就会导致双方语义不对称,集合拥有数组不具备优势。...基于以上几点,WCF提供了另外一种有效解决方案,一种专用特性:CollectionDataContractAttribute,定义为:     [AttributeUsage(AttributeTargets.Class

85660

WCF之旅(4):WCF序列化

SOA 和Message Windows Communication Foundation (WCF) 是基于面向服务架构(Service Orientation Architecture——SOA...在WCF,我们把Service调用相关提取出来即为我们经常说Contract,Service提供者和Client之间共享是Service Contract——而不传统OO概念下Type。...理解了SO基本原理,我们来看看WCF,从WCF全称来分析——Windows Communication Foundation,顾名思义,他就是解决分布式互联系统各相互独立子系统如何交互问题,换句话说...所以 在WCFSerialization可以看成是Serializer通过反射机制分析对象所对应Type原数据,从而提供一种算法实现Managed TypeXSD转化。...在WCF,有3不同方式可供选择:Binary;Text和MTOM(Message Transmit Optimized Mechanism)。

729110

WCF之旅(4):WCF序列化

首先我们还是来看一个例子,通过比较Managed Type结构和生成XML结构来总结这种序列化方式采用是怎样一种Mapping方式。...不会再Root Element添加相应Namaspace。 对象成员以XML Element形式输出。 对象成员出现顺利和在Type定义顺序一致。...只有Public Field和可读可写得Proppery才会被序列化到XML——比如定义在XMLProductinternal string ProducingArea没有出现在XML。...以上这些都是默认Mapping关系,同DataContractSerializer一样,我们可以通过在Type以及它成员运用一些Attribute来改这种默认Mapping。...Type定义顺序 字母排序 兼容性 .asmx Remoting Deserialzation 调用默认构造函数 不会调用

610110

谈谈WCFData Contract(4):WCF Data Contract Versioning

在系统开发过程,通过对Data Type添加额外字段进而对其进行扩展,是一个种很常见场景。...在这个Demo,我使用上面介绍Order Processing场景,下面是整个Solution结构(需要说明是,本片文章提供Code片断和Source Code都是基于VS 2008)。...其实在WCF解决这样一个问题方案简单而直接,那就是在Data Contract定义一个额外成员来存储没有在成员列表定义信息。...[原创]谈谈WCFData Contract(1):Data Contract Overview [原创]谈谈WCFData Contract(2):WCF Data Contract对Generic...支持 [原创]谈谈WCFData Contract(3):WCF Data Contract对Collection & Dictionary支持 [原创]谈谈WCFData Contract

73360

WCF之旅(8):WCFSession和Instancing Management

WCFSession 我们知道,WCF是MS基于SOA建立一套在分布式环境各个相对独立Application进行Communication构架。他实现了最新基于WS-*规范。...WCFSession和ASP.NETSession 在WCF,Session属于Service Contract范畴,是一个相对抽象概念,并在Service Contract定义通过SessionModel...WCF保证处于某个Session传递Message按照他发送次序被接收 WCF并没有为Session支持而保存相关状态数据。...说道WCFSession,我们很自然地联想到ASP.NETSession。实际上,他们之间具有很大差异: ASP.NETSession总是在Server端初始化。...WCFSession实现和Instancing Management 在上面我们说了,虽然WCF支持Session,但是并没有相关状态信息被保存在某种介质

23120

Wcf:可配置服务调用方式

先看下面的图: 通常,如果采用.NETWCF技术来架构SOA风格应用,我们会把项目做一些基本分层,如上图: 01. contract层:通常定义服务接口(即服务契约ServiceContract...,指明该服务提供了哪些方法可供外部调用)、以及接口方法传输Model定义(即:数据契约DataContract,指明方法对象参数Class定义) 02. implementation层:即服务接口实现...实际部署时,一般将wcf服务层和client层分开部署,如下图: 如果并发数随着业务增长而增长,不管是client层website,还是服务service,加上其它技术,比如集群或负载均衡之类...,但是总归有点不爽,既然都在一台机器上了,为啥还要自己调用自己,增加无谓开销呢?...原理其实非常简单,反射即可,先在Client层web.config或app.config增加类似以下节点: 1 2 <!

1.1K90

WCF之旅(3):在WCF实现双工通信

图2 订阅-发布 二、实例演示:创建基于双工通信WCF应用 接下来我们通过一个案例演示基于双工通信WCF应用。为简单起见,我们沿用计算服务例子。...WCF采用基于服务契约调用形式,客户端正常服务调用需要服务契约,同理服务端回调客户端依然需要通过描述回调操作服务契约,我们把这种服务契约称为回调契约。...在WCF,回调对象通过当前OperationContextGetCallback方法获得(T代表回调契约类型)。...WCF通过加锁机制保证服务对象独占性使用,也就是说在服务执行开始会对服务对象加锁,该锁在服务操作结束之后释放。 回到我们例子,在Add操作执行过程服务端回调客户端操作进行运算结果显示工作。...关于WCF并发是一个重要而且复杂的话题,本书下卷会对其进行单独介绍。

1K100

模拟在WCF应用

如果将模拟使用在WCF上面,就意味着WCF可以模拟客户端身份(而不是启动寄宿进程Windows帐号)执行服务操作。这篇文章主要介绍WCF关于模拟编程。...在采用WCF认证情况下,我们可以通过当前ServiceSecurityContextWindowsIdentity或者PrimaryIdentity获取到代码认证客户端WindowsIdentity...对象,那么在服务操作模拟客户端身份就和简单了。...这种在服务操作实现通过编程方式实现身份模式可以将服务操作部分逻辑在模拟客户端身份下执行。...身份模拟密切地关系到被模拟身份代表用户安全,所以模拟级别应该通过客户端自行控制。在WCF安全体系,该模拟级别是在客户端提供Windows凭证中指定。

822100

WCF技术剖析之四:基于IISWCF服务寄宿(Hosting)实现揭秘

我们可以通过一种简单方式来证明这一点。 假设我们有一个WCF服务需要通过IIS进行寄宿,并把WCF服务相应.svc文件定义在一个对应于某个IIS虚拟目录ASP.NET Website。...二、ASP.NET并行(Side by Side)模式 对于基于IIS服务寄宿,System.ServiceModel.Activation.HttpModule将基于.svc请求劫持并分发给WCF服务模型...除了ASP.NET提供一些少量底层服务,比如动态编译和AppDomain管理等,绝大部分ASP.NET对传统ASP.NET资源请求处理机制将不会应用在基于WCF Service请求处理流程。...在默认情况下,不论采用何种寄宿方式,WCF本身行为应该保持一致。所以,让WCF 服务行为独立于寄宿环境与传输协议,是采用并行模式主要原因。...比如,在WCF Service操作,需要获取ASP.NET应用SessionState,或者是需要通过基于.svc文件ACL对WCF Service进行授权等。

1.2K100

WCF服务部署后异常处理

在部署项目的时候,发现WCF总是存在问题,一直没找出什么原因。   ...开始在项目开发阶段客户端调用WCF服务代码如下 JSAJService.JSAJServiceClient _ajService = new JSAJService.JSAJServiceClient...(); bool IsCurrent = _ajService.IsCurrentEmpty(ID,User);   或者在本调用文件类定义一个全局WCF客户端实例服务。  ...不过,由于wcf客户端都有一个超时时间,可能静止过了一段时间,你在界面刷新数据时候,你会发现出现下面的错误:"通信对象System.ServiceModel.Channels.ServiceChannel...有没有更好方式,避免出错,又能够正确调用wcf客户吗,当然有,下面这样方式就是比较好一种解决方案,经过实际测试,效果不错。

66020

WCF技术剖析之十一:异步操作在WCF应用(下篇)

说完了客户端异步服务调用(参阅WCF技术剖析之十一:异步操作在WCF应用(上篇)),我们在来谈谈服务端如何通过异步方式为服务提供实现。...WCF通过类型OperationDescription表示对服务操作描述。...得到相应MethodInfo对象后,同样通过反射调用服务实例。 二、如何创建异步服务 在了解了异步操作定义和具体实现原理之后,我们通过一个简单实例演示异步操作在WCF应用实现。...本例子,我们通过服务调用来读取服务文件,在实现文件读取操作时候,采用异步文件读取方式。 先来看看服务契约定义。...在客户端通过添加服务引用方式生成相关服务代理代码和配置。你将会发现客户端生成服务契约和服务代理类,会有一个唯一操作Read。

762100

WCF技术剖析之十一:异步操作在WCF应用(上篇)

对于I/O绑定型操作,我们可以充分利用多线程机制,让多个操作在自己线程并发执行,从而提高系统性能和响应能力。服务调用就是典型I/O绑定型操作,所以多线程在服务调用具有广泛应用。...在本篇文章,我们专门来讨论多线程或者是异步操作在WCF具体应用。 如果按照异步操作发生位置,我个人将WCF应用异步操作分为下面3种变体。...对于单向消息交换,由于在上面一节已经进行过详细介绍,在本节主要介绍其余两种异步操作具体使用。本篇文章我们着重探讨第一种形式(异步信道调用)异步调用,关于异步服务实现放在下篇。 ?...图1 WCF多线程应用三种典型场景 为了方便客户端进行异步服务调用,最简便方式就通过SvcUtil.exe这个代码生成工具帮助我们生成机遇异步调用服务代理类。...在下面的代码,我们通过一个匿名方法形式定义回调操作,由于在回调操用输出运算结果时需要使用到参与运算操作数,我们通过BeginAdd方法最后一个object类型参数实现向回调操作传递数据,在回调操作通过

77480
领券