gpt4 book ai didi

c# - .NET Standard 库输出不包括 nuget 依赖项

转载 作者:行者123 更新时间:2023-12-03 21:20:25 25 4
gpt4 key购买 nike

我有这三个项目:

  • 一个 ASP.NET Core MVC 应用程序(针对 .NET Framework 4.6.2)
  • 包含我的 EF Core 模型、迁移和 DbContext 类的类库(针对 .NET Standard 2.0,以前是 .NET Framework 4.6.2)。
  • 使用 EF Core Migrations(针对 .NET Framework 4.6.2)更新数据库的控制台应用程序。

  • 1 和 3 都引用了 2。我只是用一个针对 .NET Standard 的新类库替换了旧的 .NET Framework 类库。类库使用 Microsoft.EntityFrameworkCore.Proxies NuGet 包。

    一切构建都没有错误,我的单元测试全部运行,并且 ASP.NET Core 应用程序运行没有问题。我的问题是用于更新数据库的控制台应用程序构建、运行,但在初始化 DbContext 时遇到运行时错误。在构造函数中的这一行:
    ChangeTracker.LazyLoadingEnabled = false;
    说它无法加载程序集 Microsoft.EntityFrameworkCore.Proxies .在调查中我发现 Microsoft.EntityFrameworkCore.Proxies.dll文件不在控制台应用程序或类库项目的构建输出中。类库项目输出中唯一的 .dll 是项目 .dll 本身,旧的 .NET Framework 版本在输出中也包含所有 NuGet 包 .dll,并且使用数据库更新工具运行良好。

    在 .NET Standard 库的输出中包含依赖项是否需要额外的东西?

    最佳答案

    这是另一个建议,取自 CEZARY PIĄTEK's blog

     <Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup>
    <TargetFramework>netstandard2.0</TargetFramework>
    <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
    </PropertyGroup>
    </Project>

    关于c# - .NET Standard 库输出不包括 nuget 依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54560345/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com