打开服务器上的 IncludeExceptionDetailInFaults (从 ServiceBehaviorAttribute 或从 <serviceDebug> 配置行为)以便将异常信息发送回

在调试wcf程序的时候,有时会遇到下面的错误:

System.ServiceModel.FaultException: 由于内部错误,服务器无法处理该请求。有关该错误的详细信息,请打开服务器上的 IncludeExceptionDetailInFaults (从 ServiceBehaviorAttribute 或从 <serviceDebug> 配置行为)以便将异常信息发送回客户端,或在打开每个 Microsoft .NET Framework 3.0 SDK 文档的跟踪的同时检查服务器跟踪日志。
Server stack trace:
   在 System.ServiceModel.Channels.ServiceChannel.ThrowIfFaultUnderstood(Message reply, MessageFault fault, String action, MessageVersion version, FaultConverter faultConverter)
   在 System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
   在 System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   在 System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   在 System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:
   在 System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   //部分程序提示信息,省略
---------------------------
确定
---------------------------

具体原因就是,在wcf的服务端

 <serviceDebug includeExceptionDetailInFaults="false"/>

设置为false了,修改为true,就可以在客户端看到具体的错误信息了,修改后的配置文件如下:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />
  </system.web>
  <system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior>
          <!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->
          <serviceMetadata httpGetEnabled="true"/>
          <!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
          <serviceDebug includeExceptionDetailInFaults="true"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
  </system.serviceModel>
 <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
</configuration>
时间: 2024-08-17 19:55:37

打开服务器上的 IncludeExceptionDetailInFaults (从 ServiceBehaviorAttribute 或从 &lt;serviceDebug&gt; 配置行为)以便将异常信息发送回的相关文章

视频-Spring mvc 打开服务器上的视屏 但视屏不播放

问题描述 Spring mvc 打开服务器上的视屏 但视屏不播放 视屏文件的相对路径是upload/2.mp4 我用servlet在JSP页面上用标签在网页上是可以播放的, 但是在Spring mvc一样用JSP和在网页上却无法播放, 是不是Spring mvc要配置路径,如果是怎么配置? 解决方案 视屏监控系统视屏的简单播放 解决方案二: 解决了,果然是配置文件里路径没有配好,上传到服务器里的文件路径不在默认配置路径下面所以造成无法读取文件的问题,,大意了..

请问如何在IE中直接打开服务器上指定路径的word文档

问题描述 asp.net2.0开发的一个网站,有一个查看文档按钮,点击此按钮,会自动下载网站根目录下的一个word文档,并且文档的内容在IE中直接打开,请问怎么实现吗?最好是有代码的 解决方案 解决方案二:在安装Office2003以后,有一个ActiveX控件被安装到了系统中,这个控件位于"ProgramFilesMicrosoftOfficeOFFICE11owssupp.dll".通过这个控件,客户端页面上的JavaScript就可以激活本地的Office软件,来实现打开.编辑O

为什么点击连接后不能打开服务器上含有中文的文件?

问题描述 为什么点击连接后不能打开服务器上含有中文的文件? 解决方案 解决方案二:我采用的开发环境是:Apache6.0,URIencoding是gb2312MYSQL4.1,default-character-set=gb2312,default-character-set=gb2312在显示的页面的部分代码是:<%@pagecontentType="text/html;charset=GB2312"%><%@pageimport="com.citic.j

网页链接如何打开服务器上的共享文件夹

问题描述 页面代码如下:<ahref="file://192.168.81.40/Template/Word"target="_blank">word模板</a>如果在桌面上(项目外即可)建立一个HTML文件,然后贴入此链接代码,再打开文件后可以直接通过网页链接打开服务区上的共享文件夹.但是如果把这个链接加入到项目文件中,则无论是通过VS调试程序还是通过IIS发布的程序都无法连接到指定的服务器文件夹.百度了一下,有人说吧服务器的防火墙关闭即可

如何打开服务器上的Excel文件

问题描述 做了一个程序在自己的机器上测试没有问题,用了以下代码stringstrSaveName=Page.Server.MapPath("Excel")+"\"+strHanLot+".xls";.....ClientScript.RegisterStartupScript(this.GetType(),"clientScript1",@"<script>window.open('"+strS

超链接打开服务器上的excel文件乱码问题

问题描述 我在页面写了一个超链接 打开一个服务器上部署项目里的excel文件.鼠标浮到链接上,显示正常的中文名称.但是点击打开以后就是乱码.找不到文件.报的404错误.我的服务器是tomcat.页面编码是GBK.HTTP Status 404 - /myfj/upload/2011%C4%EAaa%D7%DC%BD%E1%B1%A8%B1%ED.xls这是页面的报错信息.a href="upload/2011年aa总结报表.xls">打开中文的excel文件</a>页

在一台服务器上同时发布tomcat网站和rails网站, LightTPD 如何配置域名?

问题描述 我想在一台服务器上同时发布tomcat网站和rails网站.域名里面不能带端口号,对吧.那我怎么能让www.mydomain.com 访问localhost:3000,而www.anotherdomain.com 访问localhost:8080.google了很久也没找到答案,各位大侠能否帮帮忙?万分感谢!!! 解决方案 $HTTP["host"] == "www.mydomain.com" {proxy.server = ( ""

我windows 2012 服务器上装有一个虚拟机.但是鼠标不听使唤.有什么解决办法

问题描述 远程桌面.然后打开服务器上的虚拟机..但是进入虚拟机的时候.该虚拟机的鼠标.轻轻一动就乱跑.不听使唤.有解决办法没谢谢 解决方案

ASP.NET MVC 3不安装也能在服务器上运行

51CTO向您推荐:<ASP.NET MVC框架视频教程> 当在服务器上部署 ASP.NET MVC3 的应用的时候,可能会看到如下的错误信息: 这表示你的服务器上没有安装 ASP.NET MVC3. 解决这个问题的方法有两种: 第一,当然是在服务器上安装 ASP.NET MVC3 了.不过,如果你使用的是服务器的虚拟空间,或者租用的服务器,可能没有安装的条件,那就是用第二种方法吧. 第二,错误的原因很显然是缺少适当的程序集,在已经安装 ASP.NET MVC3 的情况下,这些程序集已经被安装