.net core .Net标准2.0和.Net框架4.6.1与4.7.2

.net core .Net标准2.0和.Net框架4.6.1与4.7.2,.net-core,.net-standard,.net-standard-2.0,.net-4.6.1,.net Core,.net Standard,.net Standard 2.0,.net 4.6.1,微软在很多地方都表示,为.Net标准2.0构建的代码可以在.Net Framework 4.6.1上运行,但实际上应该在.Net Framework 4.7.2上运行 这不会影响我们通过NuGet提供的DLL(这是一个商业库)的构建,但只是向使用DLL的用户推荐他们的应用程序应该使用的版本,对吗 (我看不出DLL是如何基于这种框架差异而构建的,但我觉得最好问一下)你能举一个例子吗?我从来没有听说过。但是是的,你是对的。4.6.1足够了。从开始。所以最好的目标是4.8,它完全兼容2.0,也是最后一

微软在很多地方都表示,为.Net标准2.0构建的代码可以在.Net Framework 4.6.1上运行,但实际上应该在.Net Framework 4.7.2上运行

这不会影响我们通过NuGet提供的DLL(这是一个商业库)的构建,但只是向使用DLL的用户推荐他们的应用程序应该使用的版本,对吗


(我看不出DLL是如何基于这种框架差异而构建的,但我觉得最好问一下)

你能举一个例子吗?我从来没有听说过。但是是的,你是对的。4.6.1足够了。从开始。所以最好的目标是4.8,它完全兼容2.0,也是最后一个经典的.net framework版本。@magicandre1981是的,我同意。喜欢你的建议4.8。但我的根本问题仍然是——我是否需要构建所有DLL两次,一次用于4.6.1,一次用于4.7.2?或者我是否为4.6.1构建一次,因为4.7.2或4.8设置在客户的应用程序设置中,并且将out.cs编译为.dll在这两个版本中是相同的?正如我在您之前发布的其他问题下所评论的,实验可能是获得大部分内容的唯一方法。1) 您的netstandard2.0项目只需要构建一次。2) 您必须提供一个NuGet包(这样所有的使用者net461或net472都可以从NuGet获得正确的依赖项)。3) 如果你只提供一个程序集,那么你就破坏了你在net461上的消费者,因为所有必要的依赖项都丢失了。@LexLi我从多年来的痛苦经历中发现,从实验中找到一个有效的解决方案会在不同于我测试的配置中留下巨大的错误。这就是我为什么要问的原因——从许多人那里,什么应该适用于所有情况。你能举出其中一个地方吗?我从来没有听说过。但是是的,你是对的。4.6.1足够了。从开始。所以最好的目标是4.8,它完全兼容2.0,也是最后一个经典的.net framework版本。@magicandre1981是的,我同意。喜欢你的建议4.8。但我的根本问题仍然是——我是否需要构建所有DLL两次,一次用于4.6.1,一次用于4.7.2?或者我是否为4.6.1构建一次,因为4.7.2或4.8设置在客户的应用程序设置中,并且将out.cs编译为.dll在这两个版本中是相同的?正如我在您之前发布的其他问题下所评论的,实验可能是获得大部分内容的唯一方法。1) 您的netstandard2.0项目只需要构建一次。2) 您必须提供一个NuGet包(这样所有的使用者net461或net472都可以从NuGet获得正确的依赖项)。3) 如果你只提供一个程序集,那么你就破坏了你在net461上的消费者,因为所有必要的依赖项都丢失了。@LexLi我从多年来的痛苦经历中发现,从实验中找到一个有效的解决方案会在不同于我测试的配置中留下巨大的错误。这就是我为什么要问的原因——从许多人那里,什么应该适用于所有情况。