升级到新的 .NET framework-supportedRuntime 版本 VS app.config 中的 sku?

upgrading to new .NET framework- supportedRuntime version VS sku in app.config?

我正在从 .NET 4.0 升级到 4.7.1

我关心的两件事。

  1. App.Config- <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.1"/></startup></configuration> 这是否意味着它真的没有升级到更新的框架并且 运行 是 4.0.0 而不是 4.7.1?

  2. 在由 svcutil 自动生成的 class 中?

    自动生成 // 此代码由工具生成。 // 运行时间 Version:4.0.30319.18444

    它生成:

    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]

我是否必须删除所有自动生成的 class 并以某种方式使用较新的框架重新生成它,或者我是否可以手动将它们更改为 4.7.1?

对于所有 .net 4.x 子版本 runtime version entry is 4.0 in the app.config

SKU 条目指定您定位的 .net 4.x 版本,sku=".NETFramework,Version=v4.7.1" 表示您定位 .net framework 4.7.1

does that mean that it really hasn't upgrade to newer framework and is running at 4.0.0 instead of 4.7.1?

否,当您设置 sku=".NETFramework,Version=v4.7.1" 时,这意味着 运行 应用程序需要 .NET 4.7.1。 运行time 版本对所有 4.X 框架通用。与 .NET 2.0 类似,3.0 和 3.5 的所有运行时间版本都是 2.0.50727.