我正在尝试发布 self containing deployment使用 Visual Studio。我可以通过运行以下命令使用 CLI 轻松实现:
dotnet new mvc --auth None --framework netcoreapp1.1
dotnet restore --runtime win81-x64
dotnet build
dotnet publish -c release --runtime win81-x64
此命令将创建新的 mvc 应用程序,恢复 win81-x64 运行时的所有库并将其发布。因此,部署将包含 .net core 1.1/win81-x64 平台的运行时作为应用程序的一部分。这样我就可以在没有预装 .net core 1.1 的服务器上安装它。
我的问题是如何使用 Visual Studio 2017 发布 UI 实现这一目标?如果我做简单的发布,它将不包含 .net 核心运行时文件。
谢谢!
最佳答案
不幸的是,此功能(在发布期间选择运行时)并没有包含在 VS 2017 RTM 版本中。我们计划在 future 的版本中添加它。
现在,要解决没有该功能的问题,您可以添加 <RuntimeIdentifier>
属性到您的 .csproj。
<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
<RuntimeIdentifier>win81-x64</RuntimeIdentifier>
</PropertyGroup>
现在,当您发布时,它将为该运行时独立发布。
当您想要在没有 .net 核心运行时文件的情况下发布您的应用程序时,您将需要删除此属性。如果您想为不同的运行时发布,您可以更改该值。
关于.net-core - Visual Studio 和自包含部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42797956/