1

我想使用 .NET Core创建一个自包含的 Web 应用程序。我想针对任何版本的 Windows 并在我的project.json

"runtimes": {
  "win10-x64": { },
  "win8-x64": { },
  "win7-x64": { }
}

当我运行时,dotnet publish --runtime win10-x64我一次只能指定一个运行时发布。然后我必须维护我的二进制文件的三个副本。

是否可以为所有三个运行时发布我的应用程序并将该文件夹复制为一个完全自包含的应用程序?

4

1 回答 1

5

当您创建一个自包含的应用程序时,它包含它需要运行的所有依赖项。据我所知,发布到不同版本的 Windows 之间的唯一区别是,对于旧版本,必须捆绑新版本中内置的一些依赖项。

这意味着,如果您想拥有一个可在所有受支持的 Windows 版本上运行的自包含应用程序版本,您可以: 只使用最旧的 Windows 版本 ( win7-x64)。

同样的方法可能不适用于 Linux,因为 Linux 通常不保持版本之间的二进制兼容性。

于 2016-06-15T18:25:53.187 回答