Mir*_*Mir 5 .net c# dll kentico .net-4.7.1
我敢肯定,这里可能发生了一堆我不太了解的事情,因此,如果这是一个愚蠢的问题,或者缺少明显的细节,请原谅我。
我有一个Visual Studio 2015解决方案,我已经从.NET 4.5.1升级到.NET 4.7.1。该解决方案由一个网站(不是Web应用程序)项目和几个库组成。这些库实际上没有任何依赖关系(彼此之间除外),它们以.NET 4.7.1为目标时,它们没有使用,不需要或引用.NETStandard.Library。
当我特别编译其中一个库时,它会不断将一堆.NET 4.7.1门面dll复制到网站bin文件夹中。不幸的是,该网站是Kentico 11应用程序,并且它一直试图加载System.IO.Compression.ZipFile门面,并对其进行限制,因为它是参考程序集,而不是实际程序集。
如果删除.dll,则一切运行正常...但是我不想每次都删除它,也不想添加构建后事件来删除它。那真是愚蠢。
谁能帮助我了解这里发生的事情以及如何清理它?
Kentico 11 只能针对 .NET 4.7,因此为了完全支持您的 .NET 4.7.1 库,我相信它正在复制那些额外的外观 DLL。这是基于 .NET 4.7.1 发布公告,特别是本节:
\n\n\nBCL \xe2\x80\x93 .NET 标准 2.0 支持
\n.NET Framework 4.7.1 内置了对 .NET Standard 2.0 的支持。.NET Framework 4.7.1 添加了大约 200 个缺失的 API,这些 API 是 .NET Standard 2.0 的一部分,但实际上并未由 .NET Framework 4.6.1、4.6.2 或 4.7 实现。您可以参考 .NET Standard Microsoft 文档上有关 .NET Standard 的详细信息。
\n面向 .NET Framework 4.6.1 到 4.7 的应用程序必须部署额外的 .NET Standard 2.0 支持文件才能使用 .NET Standard 2.0 库。出现这种情况是因为 .NET Standard 2.0 规范是在 .NET Framework 4.6.1 发布后最终确定的。.NET Framework 4.7.1 是 .NET Standard 2.0 之后的第一个 .NET Framework 版本,使我们能够提供全面的 .NET Standard 2.0 支持。
\n
https://blogs.msdn.microsoft.com/dotnet/2017/10/17/announcing-the-net-framework-4-7-1/
\n让我得出这个结论的参考资料:\n https://github.com/Pspecial/NServiceBus/issues/5047#issuecomment-339096350
\n更新:
\n我无法在 Visual Studio 2017 版本 15.6.2 中重现您的问题。
\n我安装了一个针对 .NET 4.7 的 Kentico 11 网站项目。然后我创建了一个针对 .NET 4.7.1 的库项目。我向项目添加了一些虚拟代码以利用 Sysetem.IO.Compression 和 System.Net.Http 命名空间。我添加了对 Kentico 项目的引用并运行了构建。没有外观 DLL 复制到 bin 文件夹。
\n这篇文章表明该问题已在 Visual Studio 版本 15.6 中修复https://github.com/dotnet/sdk/issues/1647#issuecomment-364999962
\n| 归档时间: |
|
| 查看次数: |
1387 次 |
| 最近记录: |