2011-06-28 56 views
0

我们有一个web服务的自定义错误页面。自定义错误页面在测试环境中正确显示。在生产环境中同样失败,将显示一个'运行时错误'页面,显示如何设置CustomErrors。ASP.net当webservice发生错误时,自定义错误页面重定向失败?

,我有以下Web.config中的代码pieace:

<customErrors mode="RemoteOnly" defaultRedirect="WebServiceError.aspx"/> 

我在webserviceerror.aspx

Response.ContentType = "text/xml"; 
Response.Write("<?xml version='1.0' encoding='ISO-8859-1'?>"); 
Response.Write("<WebServiceError>"); 
Response.Write("<ErrorCode>9999</ErrorCode>"); 
Response.Write("<ErrorDescription>Errore Tecnico</ErrorDescription>"); 
Response.Write("</WebServiceError>"); 

1)我能够打开WebServiceError.aspx没有下面的代码浏览器中的任何问题。
2)我有一个HTML文件WebServiceError.html尝试,这也失败
3)我试图提absoulte和相对路径用于在web.config中闯民宅webserviceerror.aspx
4)我已经确认该web.config文件是正确的,没有任何问题。

我很久没有找到解决方案了,请帮助。

由于提前,
普拉迪普

回答

3

浮现在脑海中的几点:

你应该始终包括在<customErrors>标签的路径,你的错误页面。

<customErrors mode="RemoteOnly" defaultRedirect="/myErrorPageFolder/WebServiceError.aspx"> 

mode="RemoteOnly"属性告诉IIS,你只希望看到的自定义错误页从比托管网站以外的其他机器请求页面时。如果您在同一个框中运行浏览器和Web服务器(通常在使用VS Web服务器或本地IIS实例进行调试时),则不会看到自定义错误页面。

如果您的webServiceError.aspx中有任何错误,它将无法正常工作。

你打电话的网络服务?您是否尝试过在Fiddler中查看请求和响应?

+0

嗨大卫,weserviceerror.aspx工作正常,我能够从IE浏览器的页面。错误页面(webserviceerror.aspx)和web.config位于同一个文件夹中,所以我没有提到路径。请帮忙。 – Pradeep

+0

@Pradeep如果错误页面和web.config位于同一个文件夹中,则无关紧要。你仍然需要一条路径。查看Fiddler中的请求并用结果更新您的问题。这是诊断问题的最快方法。此外,你还没有评论任何其他建议。 –

相关问题