我的项目基于WCF Web服务,在调试时,它启动了WCF测试客户端。当我遇到错误时,而不是在特定点破坏代码,它只是将错误报告给WCF测试客户端。
我希望它在代码中断,所以我可以调试并观察它正在打破哪些记录。这曾经发生过,但突然间它停止了工作。我不知道是否在web.config中禁用了它。
Project Web Server仍然设置为IIS Express(localhost:#####),我还有其他使用WCF测试客户端的项目,这些项目正在破解代码。
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="ConnectorService.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime requestValidationMode="2.0" targetFramework="4.5"/>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<directoryBrowse enabled="true"/>
</system.webServer>
<applicationSettings>
<ConnectorService.Properties.Settings>
<setting name="ConnectionName" serializeAs="String">
<value>Test</value>
</setting>
<setting name="UserName" serializeAs="String">
<value>TestUser</value>
</setting>
<setting name="Password" serializeAs="String">
<value>Password</value>
</setting>
</ConnectorService.Properties.Settings>
</applicationSettings>
</configuration>
我不知道它可能是什么,如果我能提供更多信息,请问,谢谢。
答案 0 :(得分:0)
嘛!如果您正在制作 REST 服务,那么Fidler是一个不错的选择。
始终使用记录机制。就像引发异常时一样,创建一个文件并在 catch 块中将日志详细信息放在该文件中。
要进行调试,Visual Studio中的一个选项是附加到进程选项。在菜单栏中,转到调试,然后附加到流程... 并选择适当的流程(可能是Fiddler)。
另一个选择是,在同一个WCF解决方案中创建另一个项目(Client Project)。确保您的客户端项目使用您的WCF服务。现在右键单击,点击设置启动项目... ,检查单选按钮多个启动项目...... ,并从项目中选择列表,选择操作至开始。
执行此操作后,在要调试的WCF代码中使用断点运行项目,然后执行客户端。当提出请求时,它将达到断点。确保您以调试模式运行。
请参阅此answer。
答案 1 :(得分:0)
确保在启动客户端时将其附加到调试器。 Here是如何将进程附加到调试器。
答案 2 :(得分:0)
我意识到这是一个非常老的问题,但是我相信这是由web.config中的此设置引起的: aspNetCompatibilityEnabled =“ true”