【问题标题】:System.IO.FileNotFoundException for Microsoft.EntityFrameworkCoreMicrosoft.EntityFrameworkCore 的 System.IO.FileNotFoundException
【发布时间】:2019-04-15 19:28:34
【问题描述】:

我有一个 .NET Standard 2.0 项目,它通过 Nuget 包 Microsoft.EntityFrameworkCore 使用 EF Core。以下是 *.csproj 文件中的相关 PropertyGroup:

<ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.1.4" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.1.4" />
  </ItemGroup>

解决方案构建,但在运行时,我得到一个 System.IO.FileNotFoundException:

无法加载文件或程序集“Microsoft.EntityFrameworkCore, Version=2.1.4.0, Culture=neutral, PublicKeyToken=adb9793829ddae60”或其依赖项之一。

该程序集不在构建文件夹(或任何子文件夹,例如 netstandard2.0 子文件夹)中。它在 %userprofile%\.nuget\ ...

我试过了:

  • 清理/重建
  • 清除 Nuget 缓存。
  • 添加 &lt;RestoreProjectStyle&gt;PackageReference&lt;/RestoreProjectStyle&gt; 给 *.csproj 文件。
  • 删除并重新添加 Micrososft.EntityFrameworkCore(和 Microsoft.EntityFrameworkCore.Design,也使用)

是否有其他方法可以强制将包包含在构建文件夹中(如本地副本)?

【问题讨论】:

    标签: nuget entity-framework-core filenotfoundexception


    【解决方案1】:

    编辑 *.csproj 文件并将以下内容添加到 PropertyGroup 似乎已经解决了问题(或至少提供了一个合理的解决方法):

    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-30
      • 2022-01-04
      • 2013-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多