30

Visual Studio では、「web の公開」機能を使用して web.config 変換を実行し、WebAPI プロジェクトをサーバーに公開します。発行は、Web Deploy を使用して行われます。

Visual Studio Code を使用するようになったので、そのツールを失いました。しかし、Web Deploy を使用してプロジェクトを公開し続けたいと考えています。プロジェクトを公開する VSCode タスクを作成する方法はありますか?

Visual Studio Publish は [target].pubxml ファイルを使用します。「staging.pubxml」と「production.xml」があります。これらは MSBuild ファイルのように見えます。したがって、コードから msbuild タスクを実行するだけの問題かもしれません。ただし、どこから始めればよいかわかりません。

もう 1 つの考えは、Web Deploy コマンド ライン ツールを開始できるということです。私はそれを使用したことがありません。最初のアイデアの方が優れているようです。

4

4 に答える 4

19

現在、最新の vscode (1.7.x) を使用していると仮定します。Visual Studio Code の Task Runner を使用できます。

<F1>まず、 を押して Enterを押して、タスク ランナーを構成する必要がありますtask[タスク: タスク ランナーの構成]を選択します。

次の内容の新しいファイルtasks.jsonが vscode によって作成されます。

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "0.1.0",
    "command": "msbuild",
    "args": [
        // Ask msbuild to generate full paths for file names.
        "/property:GenerateFullPaths=true"
    ],
    "taskSelector": "/t:",
    "showOutput": "silent",
    "tasks": [
        {
            "taskName": "build",
            // Show the output window only if unrecognized errors occur.
            "showOutput": "silent",
            // Use the standard MS compiler pattern to detect errors, warnings and infos
            "problemMatcher": "$msCompile"
        }
    ]
}

次に、新しい発行タスクを追加する必要があります。@Rolo からの回答を使用して、tasks配列に新しいタスクを追加できます。

    {
        "taskName": "publish",
        // Always show errors from builds.
        "showOutput": "always",
        "args": [
            "/p:DeployOnBuild=true",
            "/p:PublishProfile=Test"
        ]
    }

3 番目に、tasks.jsonが完了したら。+ (またはMac では +) を押して、 と入力publishすると、タスクを使用できます。CtrlPCmdPtask publish

于 2016-11-29T01:58:43.753 に答える
5

Visual Studio Code には、Visual Studio のような統合ビルド システム (Web 発行) がありません。ただし、コマンド ライン タスクが実行されており、Git が組み込まれています。

したがって、いくつかのオプションがあります。

1) タスク ランナーを使用して、コマンド パレット (ctrl+p) からビルド/パブリッシュを開始します。Gruntはプレビュー*で利用できます。これには手動でスクリプトを作成する必要がありますが、それが完了すると、その時点から簡単にタスクを開始できます。

(更新:ドキュメントでは、Make、Ant、Gulp、Jake、Rake、MSBuild など、他の互換性のあるタスク ランナーについて言及されています。また、.settings の tasks.json には、MSBuild ファイルを機能させる方法の例があります。ctrl+p と入力してください: "タスクの実行」をクリックしてから、「タスクの構成」をクリックします)

2) 継続的インテグレーション用にソース管理システムをセットアップして、更新を特定のブランチにプッシュすると、MSBuild (または他のビルド システム) スクリプトが実行され、サーバーに公開されるようにします。Team Foundation Server (TFS) と Git を使用しています。プッシュを受信したときにビルドおよび公開するようにセットアップされた特定の「リリース/マスター」ブランチがあります。初期設定も必要ですが、完了すると自動的に設定されます。TFS がない場合は、オンラインで TFS を試してください。他にもたくさんのオプションがありますが、それが私たちが使用するものです。

私はあなたがこれを理解しようとしているのと同じ立場にいます。あなたが見つけたものを知りたいです。

* Build 2015 での Deep Dive セッションによる。tasks.json ファイルを見ると、Gulp と MSBuild の例がプレビューで利用できるように見えます。

于 2015-05-02T13:57:31.560 に答える