2011-08-25 36 views
3

我有一个简单的WCF服务。它处理返回查找表的POST请求。它应该是一个GET服务,但我不想进入为什么它不是。我在IIS7和VS2010上运行这个。NetworkError:500会话超时后出现System.ServiceModel.ServiceActivationException

当用户会话超时发生坏事时。我必须经过一番努力才能重新开始工作。我做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> 

回答

2

如果你有多个项目,检查WCF集的引用,并确保它们是相同的版本。看来你正在处理组装过程中的时间问题,并且如果系统不知道要使用哪个.dll,它会猜测。

+0

嗯有趣,我会检查出来的谢谢。 - 丹 –

+0

里克我给了你一个答案,因为这让我在盒子外思考。我相信我的问题与WCF,IIS,垃圾收集和从Visual Studio运行有关。我们的生产服务器从来没有这个问题我还没有确定确切的情况,但我不太担心这个问题会影响生产。谢谢 - 丹 –