文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

WCF异常的解决办法是什么

2023-06-17 19:13

关注

WCF异常的解决办法是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

首先,我认为这是一个很有用的插件,如果继续得到改进和增强,我想该插件会被更多开发者使用。对于WCF异常源码的学习,对于我们掌握怎样正确创建WCF异常插件工程是很有帮助的,而且也可从中学到不少编程技巧,例如委托和模板方法。希望大家一起研究下

缺省情况下,服务端发生异常,客户端会得到一个缺省的Exception,但这个Exception实例中并不包括详细的异常信息。只是告诉客户端服务端不能正常工作。在服务器和客户端模式的程序中,有些情况下,服务启是不能完全信赖客户端的。

比如浏览器和web服务器之间,为了防止非法的客户端从异常消息中获取服务端的比较详细的信息,使得心怀叵测之人有机可乘,所以服务启对于异常 返回通常会比较模糊。WCF异常也采用了这种做法,缺省情况下,它返回给客户端的异常只告知我出错了,但不告诉人家他哪里错了。这通常应用于客户端来源不明的生产环境,以此保护服务程序。 

如果想消息更友好一些,可以通过IncludeExceptionDetailInFaults=True来设置返回具体的异常信息,这样就能告诉客户端服务出错了,并指出错误出在哪里。在程序开发阶段或者有些应用场合,客户端是受信任的,WCF异常为了让客户端能更详尽的了解服务端到底出了什么问题。

WCF异常也支持发送详细的错误消息给客户端,这更有利于应用程序调试。而返回详细异常有两种方法:***种:通过在服务端的配置文件中设置:<serviceDebug includeExceptionDetailInFaults="False" />,第二种方式为通过在代码中指定:[ServiceBehavior(IncludeExceptionDetailInFaults=true)] 

在WCF异常中,还支持更详细的异常消息,它通过自定义的异常消息FaultMessage来传达更多的内容。WCF采用通用的Soap Fault来处理异常,并提供了FaultException和FaultException<FaultMessage>两个类型来描述和操作异常。

通讯异常,这通常是因为链路的原因,比如服务没有启动,网络阻塞等。这类异常是CommunicationException或者其派生类
2) 状态异常,这类异常通常是与上文提到的实例模式相关的,当访问了一个已经销毁的服务器对象时便会引发此类型的异常,它们通常是ObjectDisposedException
3) 服务异常,由服务端根据具体的业务逻辑触发,通常是FaultException 值得注意的是当抛出服务异常的时候,不同的实例模式的处理方式有所不同:

PerSession:这种模式下,抛出异常,服务实例将销毁,客户端抛出FaultException,客户端代理对象无法继续使用 PerCall:这种模式下,抛出异常,服务实例也将销毁。客户端代理对象无法继续使用 Single:这种模式下,抛出异常,服务实例会照旧运行。客户端代理无法继续使用。

关于WCF异常的解决办法是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网行业资讯频道了解更多相关知识。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯