時代に翻弄されるエンジニアのブログ

ゲームプログラマをやっています。仕事やゲームや趣味に関してつらつら書きたいと思います。

Azure Functions を Visual Studio Code で ローカル実行 で つまづいたはなし

結論

  • Azure Functions チュートリアル通りに行うと、csproj と sln が同じディレクトリに作成され、ビルドプロジェクトを特定できない問題が発生する
  • vscode/tasks.json を変更し、パスを指定することで、ビルドが成功する
  • url 指定で 関数の実行もできる

公式通りに実行してもエラーが発生する

  • vscode で azure functions を実行する公式テキスト learn.microsoft.com
  • プロジェクトを作成後に F5 を押すことでビルドするはずが、プロジェクトが2つあるとエラーが発生
  • 見ると csproj 以外に sln が自動生成される。この2つのどちらを実行するかでエラーが発生している模様

解決

  • vscode/tasks.json には clean や build などのタスクが設定されている、ここの json の args に csproj の パスを設定すると、そのパスでビルドなどが走る
  • clean や build など複数あるので、それぞれ args に設置すると良い
  "tasks": [
    {
      "label": "clean (functions)",
      "command": "dotnet",
      "args": [
        "clean",
        "/property:GenerateFullPaths=true",
        "/consoleloggerparameters:NoSummary",
        "Test.csproj"
      ],
      "type": "process",
      "problemMatcher": "$msCompile"
    },
  • ちゃんと BreakPoint も効いてくれて嬉しい