0

使用诊断时,IIS 上的 WCF 出现问题。

当我调用该服务时,我收到以下错误:

System.Net.WebException:远程服务器返回错误:(500)内部服务器错误..

如果我删除“system.diagnostics”部分,我不会收到错误 500,但会收到错误

无法激活请求的服务“ http://localhost/CustomerServiceSite/Customer.svc ”。有关详细信息,请参阅服务器的诊断跟踪日志。

这显然需要诊断才能解决。

知道为什么诊断不起作用吗?

4

3 回答 3

1

检查 Web 服务器上的事件日志 - 应在此处记录 http 500。还要检查在 IIS 中运行 AppPool 的帐户是否有权访问用于诊断的文件。

于 2010-09-13T07:38:36.153 回答
0

诊断程序会将跟踪文件写入磁盘 - 可能运行 WCF/ASP.NET 的用户帐户没有写入文件的权限。

于 2010-09-13T07:40:41.030 回答
0

如果我在浏览器(http://localhost/CustomerServiceSite/Customer.svc)中打开我的服务,我已经看到了整个错误。

问题是因为我以错误的方式使用了 NHibernate 和 Diagnostics。评论 NHibernate 配置解决了我的问题。

于 2010-09-13T15:19:38.613 回答