Visual Studio和自包含部署

ser*_*iyb 4 .net-core visual-studio-2017

我正在尝试使用Visual Studio 发布包含部署的自我.我可以通过运行以下命令轻松实现:

dotnet new mvc --auth None --framework netcoreapp1.1            
dotnet restore --runtime win81-x64      
dotnet build
dotnet publish -c release --runtime win81-x64    
Run Code Online (Sandbox Code Playgroud)

此命令将创建新的mvc应用程序,还原win81-x64运行时的所有库并将其发布.因此,部署将包含.net核心1.1/win81-x64平台的运行时作为应用程序的一部分.这样我就可以在没有预安装.net core 1.1的服务器上安装它.

我的问题是如何使用Visual Studio 2017发布UI实现这一目标?如果我做简单的发布,它将不包括.net核心运行时文件.

谢谢!

Eri*_*rdt 7

不幸的是,这个功能(在发布期间选择运行时)没有进入VS 2017 RTM版本.我们计划在将来的版本中添加它.

目前,要解决此问题,可以将<RuntimeIdentifier>属性添加到.csproj中.

<PropertyGroup>
  <TargetFramework>netcoreapp1.1</TargetFramework>
  <RuntimeIdentifier>win81-x64</RuntimeIdentifier>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)

现在,当您发布它时,它将为该运行时单独发布.

如果要在不使用.net核心运行时文件的情况下发布应用程序,则需要删除此属性.如果要为其他运行时发布,则可以更改该值.