ASP.NET MVC与Unity中的RavenDB导致ResolutionFailedException

时间:2015-08-14 01:48:42

标签: c# asp.net asp.net-mvc ravendb

我有以下内容:

  • ASP.NET MVC 5
  • RavenDB.Client version =“3.0.3690”
  • Unity版本=“3.5.1404.0”
  • Unity.Mvc最新

特别是在ASP.NET应用程序空闲一段时间后,在加载页面时,我会定期获得以下异常:

Exception information: 
    Exception type: ResolutionFailedException 
    Exception message: Resolution of the dependency failed, type = "MyCompany.Web.Controllers.MainController", name = "(none)".
Exception occurred while: Calling constructor XXXXXXXX.
Exception is: FileNotFoundException - Could not load file or assembly 'ICSharpCode.NRefactory.CSharp, Version=5.0.0.0, Culture=neutral, PublicKeyToken=d4bfe873e7598c49' or one of its dependencies. The system cannot find the file specified.

请注意,ICSharpCode.NRefactory.CSharp似乎是 RavenDB 中的嵌入式程序集。我没有在我的代码中的任何地方引用它,它不在bin文件夹中。 我从来没有在控制台或WPF应用程序中出现此错误,因此必须卸载AppDomain和/或回收ASP.NET AppPools。

Unity.Mvc中的代码可能无法正确处理嵌入式程序集的卸载。或者也许我的web.config部分缺少某些东西。

一旦我收到错误,我点击了浏览器中的F5(刷新)按钮,并且中提琴,错误消失,页面按预期加载。

有什么想法吗?

谢谢, -Alec。

0 个答案:

没有答案