WCF基本知识

1.开通WCF调试服务:

须在服务端的行为中作如下配置:includeExceptionDetailInFaults="true" 代码如下:

<behaviors>

<serviceBehaviors>

<behavior name="MyBehavior">

<serviceDebug 
includeExceptionDetailInFaults="true" ></serviceDebug>

</behavior>

</serviceBehaviors>

</behaviors>

2.关于WCF客户端信道异常的处理方法,须在catch中新建,且体代码如下:

ChannelFactory<IContract> factory=new
ChannelFactory<IContract>("myclient");

IContract
proxy=factory.CreateChannel();

try

{

proxy.GoFunction();

}

catch(Exception
ex)

{

if(proxy.InnerChannel.State == CommunicationState.Faulted)

{

factory=new
ChannelFactory<IContract>("myclient");

// proxy=factory.CreateChannel();

}

}

3.当WCf服务出现TimeOutException或CommunicationException时,当前信道壮态变成Faulted,表示信道出现错误,

将使信道不能用于后续通信,即使调用close方法关闭也不行,此时客户端须调用Abort方法强制中断该信道。

using(ChannelFactory<IContract> 
factory=new ChannelFactory<IContract>("MyClient"))

{

IContract 
proxy=factory.CreateChannle();

try

{

proxy.GoFunction();

(proxy as ICommunicationObject).Close();  //
这里是关闭信道

}

catch(CommunicationException ex)

{

(proxy as ICommunicationObject).Abort();   
// 强制杀死信道

}

catch(TimeoutException
ex)

{

(proxy as ICommunicationObject).Abort();    //
强行释放信道

}

catch(Exception ex)

{

LogError.Message(ex.Message);

}

}

WCF基本知识,布布扣,bubuko.com

时间: 2024-10-25 16:36:24

WCF基本知识的相关文章

WCF入门教程:WCF基础知识问与答(转)

学习WCF已有近两年的时间,其间又翻译了Juval的大作<Programming WCF Services>,我仍然觉得WCF还有更多的内容值得探索与挖掘.学得越多,反而越发觉得自己所知太少,直到现在,我也认为自己不过是初窥WCF的门径而已. 学以致用”,如果仅仅是希望能够在项目中合理地应用WCF,那么对于程序员而言,可以有两种选择,一种是“知其然而不知其所以然”,只要掌握了WCF的基础知识,那么对于一般的应用就足够了.要做到这一点就很容易了,微软秉承了一贯的方式,将WCF这门技术优雅地呈现给

WCF学习--Windows事务系统

最近开始WCF相关知识的学习,虽然实际工作中使用公司自己的一套SOA系统,但微软的一套服务架构还是具有很大的参考意义.除了WCF的一些基础使用,相对比较复杂的内容有分布式的事务和通信的安全等,不过基本都和WS-协议簇相关联.为了引出WCF中的事务处理,今天优先介绍Windows下的事务处理模型,说实话用了很多年的TransactionScope,其实我一直都不知道它到底是如何运作的,回想Java中不管是EJB还是Spring也有和这部分类似的实现.今天通过学习蒋金楠老师的WCF服务框架解析来了解

WCF学习之基本概念的理解

最近在做云平台项目的时候,反复听到WCF这个东东,对于我这只菜鸟,也就只能硬着头皮上了. 那么什么是wcf呢,今天我们先看一些基本概念. 1.什么是WCF? WCF全名是:WindowsCommunication Foundation ,是一个运行库和一组 API,用于创建在服务与客户端之间发送消息的系统.它使用相同的基础结构和 API 来创建应用程序,这些应用程序可与同一计算机系统上或驻留在另一家公司内并通过 Internet 访问的系统上的其他应用程序进行通信. 2.它包括什么? 按照我的理

老老实实学WCF

第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型,包括定义和实现服务协定.配置服务.寄宿服务.通过添加服务引用的方式配置客户端并访问服务.我们对WCF的编程生命周期有了一个最基本的了解. 在前两篇中演示的例子,一定要力求背着做下来,包括源程序.配置文件都要背着一行行的手写下来,这样才能有深刻的体会.WCF的知识零散复杂,必须扎扎实实的学习和练习.如果你还没有做到了然于胸,现在赶紧翻回去把例子再做一遍. 今天让我们稍微深入一点,了解一些关于寄宿的新知识:在

WCF基础教程——vs2013创建wcf应用程序

引言 近期在项目中见到了师哥们常常谈到的WCF这方面的知识.当时在写程序的时候也没有理解wcf究竟是个什么东西? 以及我们为什么在项目中会採用这种框架来实现,仅仅是依照师哥他们写好的代码编写同样格式的代码.随着代码敲 的越来越多就慢慢的懂得了如何实现client和服务端的连同,可是wcf真正的执行机制还是一点也不懂,近期在听师 哥们讲课的时候有解说了一些关于WCF的知识,自己感觉应该好好理解这方面的知识了,而且这个东西在项目中是非 经常见的,以下就结合我实现的一个小Demo来和大家分享一下. 当

[老老实实学WCF] 第三篇 在IIS中寄存服务

原文:[老老实实学WCF] 第三篇 在IIS中寄存服务 老老实实学WCF 第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型,包括定义和实现服务协定.配置服务.寄宿服务.通过添加服务引用的方式配置客户端并访问服务.我们对WCF的编程生命周期有了一个最基本的了解. 在前两篇中演示的例子,一定要力求背着做下来,包括源程序.配置文件都要背着一行行的手写下来,这样才能有深刻的体会.WCF的知识零散复杂,必须扎扎实实的学习和练习.如果你还没有做到了然于胸,现在赶紧翻

WCF分布式服务1-核心概念

参考msdn library for WCF Windows Communication Foundation (WCF) 是用于构建面向服务的应用程序的框架. 借助 WCF,可以将数据作为异步消息从一个服务终结点发送至另一个服务终结点. 服务终结点可以是由 IIS 承载的持续可用的服务的一部分,也可以是应用程序中承载的服务. 终结点可以是从服务终结点请求数据的服务客户端. 简单消息可以是作为 XML 发送的单个字符或单个单词,复杂消息可以是二进制数据流. WCF 的功能 WCF 包括以下功能集

老老实实学WCF[第三篇] 在IIS中寄宿服务

老老实实学WCF 第三篇 在IIS中寄宿服务 通过前两篇的学习,我们了解了如何搭建一个最简单的WCF通信模型,包括定义和实现服务协定.配置服务.寄宿服务.通过添加服务引用的方式配置客户端并访问服务.我们对WCF的编程生命周期有了一个最基本的了解. 在前两篇中演示的例子,一定要力求背着做下来,包括源程序.配置文件都要背着一行行的手写下来,这样才能有深刻的体会.WCF的知识零散复杂,必须扎扎实实的学习和练习.如果你还没有做到了然于胸,现在赶紧翻回去把例子再做一遍. 今天让我们稍微深入一点,了解一些关

WCF分布式开发步步为赢(14):WCF安全编程--基本概念

WCF安全机制是个非常复杂的问题,因为涉及的知识点较多,所以今天这个文章,会分析进行WCF安全开发应该了解的哪些知识点.如何查看资料.为了更好地理解WCF安全相关知识,我把WCF安全机制主要知识点整理为图表.本章以介绍WCF安全机制的基础概念为主.  要学习WCF安全编程,你应该学习什么首先掌握什么基础知识?很多时候会因为缺乏系统的安全概念,在进行WCF安全编程开发的时候,遇到很多问题,比如所证书,这个概念相信很多初学者第一次接触的时候花费了很多时间.我当时在做WSE安全开发的时候就查阅了很多资