好吧,我找到了上面错误中提到的“服务器日志”。
您需要通过添加以下标记在 web.config 文件中打开跟踪:
<system.diagnostics>
<sources>
<source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing" >
<listeners>
<add name="ServiceModelTraceListener"/>
</listeners>
</source>
<source name="System.ServiceModel" switchValue="Verbose,ActivityTracing" >
<listeners>
<add name="ServiceModelTraceListener"/>
</listeners>
</source>
<source name="System.Runtime.Serialization" switchValue="Verbose,ActivityTracing">
<listeners>
<add name="ServiceModelTraceListener"/>
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="App_tracelog.svclog"
type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ServiceModelTraceListener" traceOutputOptions="Timestamp"/>
</sharedListeners>
</system.diagnostics>
这将在您的网站目录中创建一个名为 app_tracelog.svclog 的文件。
然后使用 SvcTraceViewer.exe 实用程序查看此文件。查看器很好地突出了错误(以及有关通信的许多其他信息)。
注意:使用上述参数创建的日志文件增长非常快。只能在调试时开启!
在这种特殊情况下,问题最终是我们的 Oracle 数据提供程序 OraDirect.Net 的错误版本。我们使用的版本不支持 3.5 SP1。