无法在Sitecore 8.1项目中加载文件或程序集Microsoft.Extensions.DependencyInjection.Abstractions

时间:2017-10-30 11:37:48

标签: asp.net nuget sitecore

无法加载文件或程序集“Microsoft.Extensions.DependencyInjection.Abstractions,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = adb9793829ddae60”或其中一个依赖项。系统找不到指定的文件。

我尝试清理并重建解决方案并删除bin和obj仍然我得到了同样的错误。我正在使用sitecore 8.1。

堆栈跟踪:

    [FileNotFoundException: Could not load file or assembly 'Microsoft.Extensions.DependencyInjection.Abstractions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60' or one of its dependencies. The system cannot find the file specified.]
    Sitecore.DependencyInjection.<>c__14`1.<GetRequiredResetableService>b__14_0() +0
    Sitecore.DependencyInjection.LazyResetable`1.get_Value() +148
    Sitecore.Configuration.Factory.GetConfigNode(String xpath) +72
    Sitecore.Resources.Media.UploadWatcher.InitializeIgnoreList() +156
    Sitecore.Resources.Media.UploadWatcher..cctor() +85

    [TypeInitializationException: The type initializer for 'Sitecore.Resources.Media.UploadWatcher' threw an exception.]
    Sitecore.Resources.Media.UploadWatcher..ctor() +0

1 个答案:

答案 0 :(得分:4)

这可能是由以下原因之一引起的:

  1. 您通过Nuget包将 Sitecore.Kernel 添加到您的项目中,并且您正在引用更高版本(8.2)并在构建和发布时将其部署到bin文件夹,您需要检查您的nuget包中有正确的Sitecore.Kernel版本
  2. 您正在覆盖项目中的 web.config (不包括Sitecore默认配置)并将其推送到根文件夹,您需要确保只有正确的Sitecore web.config是在根文件夹中。
  3. 您正在引用更高版本的&#34; Microsoft.Extensions.DependencyInjection.Abstractions &#34;在NuGet包中打包,确保您引用版本号&#34; 1.0.0 &#34;,因为这是sitecore正在使用的版本。
  4. 希望这有帮助