我有一个简单的WCF服务。它处理返回查找表的POST请求。它应该是一个GET服务,但我不想进入为什么它不是。我在IIS7和VS2010上运行它。
当用户会话超时时会发生不好的事情。我必须通过箍来让它再次运作。我做IISReset,重启浏览器,清除缓存。说实话,不确定是什么“修复”它。我看着小提琴手没什么东西对我突出。
无法真正调试它,因为它无法访问服务方法。它似乎在WCF框架层中窒息。
有时候我会到达下面。 “System.IO.FileNotFoundException:无法加载文件或程序集'App_Web_kcbh0gdd,Version = 0.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一。系统找不到指定的文件。”
所以我清理,构建(没有错误)并重新启动。
奇怪的是,这是唯一可以执行此操作的服务(我知道),并且配置与其他服务相同。底部是web.config的相关部分。
这真令人讨厌和可怕。
我将看看服务跟踪查看器工具是否会有所启发。
如果有其他人遇到这个问题或有任何想法,我全都听见了。
THX
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="Web.Administration.ProviderInformationSvcAspNetAjaxBehavior">
<enableWebScript />
</behavior>
....
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<services>
<service behaviorConfiguration="Default" name="Web.Administration.ProviderInformationSvc">
<endpoint address=""
behaviorConfiguration="Web.Administration.ProviderInformationSvcAspNetAjaxBehavior"
binding="webHttpBinding"
bindingConfiguration="DefaultBindingConfig"
contract="Web.Administration.ProviderInformationSvc" />
</service>
答案 0 :(得分:2)
如果您有多个项目,请检查WCF程序集引用并确保它们是相同的版本。看来你正在处理程序集加载期间的计时问题,如果系统不知道使用哪个.dll,它就会猜到。