Val*_*tor 6 .net c# visual-studio nuget
我有这三个项目:
1 和 3 都参考 2。我刚刚用一个针对 .NET Standard 的新类库替换了旧的 .NET Framework 类库。类库使用Microsoft.EntityFrameworkCore.ProxiesNuGet包。
一切构建都没有错误,我的单元测试全部运行,并且 ASP.NET Core 应用程序运行没有问题。我的问题是,用于更新数据库的控制台应用程序构建、运行,但在初始化DbContext构造函数中的这一行时遇到运行时错误:
ChangeTracker.LazyLoadingEnabled = false;
说它无法加载程序集Microsoft.EntityFrameworkCore.Proxies。经过调查,我发现该Microsoft.EntityFrameworkCore.Proxies.dll文件不在控制台应用程序或类库项目的构建输出中。类库项目输出中唯一的 .dll 是项目 .dll 本身,旧的 .NET Framework 版本在输出中也包含所有 NuGet 包 .dll,并且使用数据库更新工具运行良好。
在 .NET 标准库的输出中包含依赖项是否需要额外的东西?
这是另一个建议,取自CEZARY PI\xc4\x84TEK\ 的博客
\n\n <Project Sdk="Microsoft.NET.Sdk">\n <PropertyGroup>\n <TargetFramework>netstandard2.0</TargetFramework>\n <CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies> \n </PropertyGroup>\n</Project>\nRun Code Online (Sandbox Code Playgroud)\n
我最终不得不将 .NET Framework 4.6.2 添加到类库的目标框架列表中。
在.csproj中:
<PropertyGroup>
<TargetFrameworks>netstandard2.0;net462</TargetFrameworks>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
此后,它可以与 .NET Framework 应用程序一起使用。
| 归档时间: |
|
| 查看次数: |
5046 次 |
| 最近记录: |