从 JetBrains Rider 发布 web 项目

Publish web project from JetBrains Rider

我正在尝试 Rider,到目前为止,我非常喜欢它。

我在 Visual Studio 中经常使用的一个功能是右键单击 Web 项目并发布到我们的测试服务器。

我在 Rider 中找不到类似的选项,所以我所做的是创建一个 运行 配置,设置如下:

当我想发布时,我从下拉列表中 select 然后单击 运行。
这 100% 有效。

我的问题是,如果不设置 CI 管道,这是最好的方法吗?我是否缺少 IDE 中的选项或设置?

截至 2018 年 6 月,Rider doesn't have UI for publishing

登录 YouTrack 后,您可以为 feature request 投票。

作为一种解决方法,可以像您一样创建“.NET 可执行文件”配置,并在您要发布项目时 运行 创建它。

更详细的说明如下:

  1. 运行 > 编辑配置
  2. 添加新配置 > .NET 可执行文件
  3. 名称 = 你的项目名称
  4. Exe 路径 = 你的 MSBuild 路径(例如 C:/Program Files (x86)/Microsoft Visual Studio/2017/Professional/MSBuild/15.0/Bin/amd64/MSBuild.exe
  5. 程序参数 = YourSolution.sln /t:"Your_Project" /p:PublishProfile=YourPublishProfile.pubxml /p:Configuration=Debug /p:DeployOnBuild=true /m
  6. 工作目录 = C:/path/to/solution/dir/

备注:

  • 项目发布配置文件通常位于 Properties/PublishProfiles 下的项目文件夹中。如果您没有,可以从下面报告的示例开始;
  • 您需要将项目名称中的点(.)替换为下划线(_)。在上面的示例中,Your.Project 被传递为 Your_Project;
  • 您可以通过添加参数 /p:PublishDir="C:/path/to/publish/dir/";
  • 指定不同的发布目录(如果尚未在发布配置文件中指定)
  • 如果您的机器上没有安装 Visual Studio,您可以使用与 Build Tools for Visual Studio 2017.
  • 捆绑在一起的 MSBuild

发布配置文件示例:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <LastUsedBuildConfiguration>Debug</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <publishUrl>..\YourPublishDirectory</publishUrl>
    <DeleteExistingFiles>True</DeleteExistingFiles>
    <ExcludeFilesFromDeployment>bin\*.dll.config</ExcludeFilesFromDeployment>
  </PropertyGroup>
</Project>

最新版本的 Rider 支持通过 UI 发布。如果您的计算机上没有安装 Visual Studio,请确保 Web 项目已安装 Build.Microsoft.VisualStudio.Web.targets nuget 包。