dotnet ef数据库更新无法加载文件或程序集' Microsoft.Extensions.FileProviders.Abstractions

时间:2017-09-13 06:05:02

标签: c# asp.net-mvc entity-framework visual-studio-2017

我尝试从程序包管理器控制台执行以下代码,首先是代码,我刚从我们的TFS服务器克隆的实体框架项目。我正在使用VS2017。

我已尝试通过nuget等卸载并重新安装软件包,但我不知道导致此问题的原因以及解决方法。

任何帮助,非常感谢。

dotnet ef数据库更新-c DbContext

控制台中的结果输出如下:

  

构建成功。       0警告       0错误

     

时间流逝00:00:03.12

     

System.IO.FileLoadException:无法加载文件或程序集   ' Microsoft.Extensions.FileProviders.Abstractions,Version = 1.1.0.0,   Culture = neutral,PublicKeyToken = adb9793829ddae60'或其中一个   依赖。

     

定位的程序集的清单定义与程序集不匹配   参考。 (HRESULT异常:0x80131040)

     

文件名:' Microsoft.Extensions.FileProviders.Abstractions,   Version = 1.1.0.0,Culture = neutral,PublicKeyToken = adb9793829ddae60'
  在   Microsoft.EntityFrameworkCore.Design.Internal.StartupInvoker.ConfigureHostServices(IServiceCollection   服务)   Microsoft.EntityFrameworkCore.Design.Internal.StartupInvoker.ConfigureServices()   在   Microsoft.EntityFrameworkCore.Design.Internal.DbContextOperations..ctor(IOperationReporter   记者,汇编汇编,汇编startupAssembly,String   environment,String contentRootPath)at   Microsoft.EntityFrameworkCore.Design.Internal.MigrationsOperations..ctor(IOperationReporter   记者,汇编汇编,汇编startupAssembly,String   environment,String projectDir,String contentRootPath,String   rootNamespace)at   Microsoft.EntityFrameworkCore.Design.OperationExecutor<> c__DisplayClass4_0< .ctor> b__4()   在Microsoft.EntityFrameworkCore.Internal.LazyRef`1.get_Value()at   Microsoft.EntityFrameworkCore.Design.OperationExecutor.UpdateDatabaseImpl(字符串   targetMigration,String contextType)at   Microsoft.EntityFrameworkCore.Design.OperationExecutor.OperationBase.Execute(动作   动作)

     

===预绑定状态信息===

     

日志:DisplayName = Microsoft.Extensions.FileProviders.Abstractions,   Version = 1.1.0.0,Culture = neutral,PublicKeyToken = adb9793829ddae60   (完全指定的)

     

日志:Appbase =   文件:/// C:/用户/ JohnSmith对/源/回购/ MyApp的/ SRC / MyApp的模型/ bin中/调试/ net452 / WIN7-64

     

日志:初始PrivatePath = NULL

     

调用程序集:Microsoft.AspNetCore.Hosting.Abstractions,

     

Version = 1.1.1.0,Culture = neutral,PublicKeyToken = adb9793829ddae60。

     

日志:此绑定在默认加载上下文中启动。

     

日志:找不到应用程序配置文件。

     

日志:使用主机配置文件:

     

日志:使用来自的机器配置文件   C:\的Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ CONFIG \ machine.config中

。      

日志:政策后参考:   Microsoft.Extensions.FileProviders.Abstractions,Version = 1.1.0.0,   Culture = neutral,PublicKeyToken = adb9793829ddae60

     

日志:尝试下载新网址   文件:/// C:/Users/johnsmith/Source/Repos/myapp/src/myapp-model/bin/Debug/net452/win7-x64/Microsoft.Extensions.FileProviders.Abstractions.DLL

     

警告:比较程序集名称导致不匹配:构建   编号

     

错误:无法完成装配设置(hr = 0x80131040)。探测   终止。

     

无法加载文件或程序集   ' Microsoft.Extensions.FileProviders.Abstractions,Version = 1.1.0.0,   Culture = neutral,PublicKeyToken = adb9793829ddae60'或其中一个   依赖。定位程序集的清单定义没有   匹配程序集引用。 (HRESULT异常:0x80131040)

1 个答案:

答案 0 :(得分:2)

好像你在不同的项目中安装了这个软件包?导航到管理解决方案的NuGet包,然后在合并选项卡中搜索该包。 enter image description here

在那里,您将看到安装在具有不同版本的不同项目中的软件包。安装适当的版本,它应该可以工作。

Search Nuget Package in installed packages