我发现很多页面都提到了这个话题,但没有一个是明确的或结论性的,因此这个问题
如果我把一个c#应用安装在。net Core 3.1的目标框架上,安装到只包含。net 6的服务器上,它还能正常运行吗?
如果我将Windows服务器上的。net版本从。net Core 3.1升级到。net 6,已经在该服务器上使用。net Core 3.1目标框架构建的应用程序还能正常运行吗?
感谢不一定-每个主要版本都有许多突破性的变化。
. net 5->6的标准发布在这里。对于。net Core 3.1 ->. net 5见这里。
还要注意二进制不兼容之间的区别和源不兼容
二进制兼容-现有的二进制文件可能会遇到破坏性的行为变化,例如加载或执行失败,或不同的运行时行为。
源不兼容的-源代码在针对新的运行时或使用新的SDK时可能会遇到破坏性的行为变化组件。行为更改可能包括编译错误或其他错误运行时行为。