3. Azure Finctionsのプロジェクトテンプレート を更新
つよつよな方々には常識だったかも知れませんが…
ChatGPT さん(今回はo3さんに助けてもらいました)
Functions テンプレートを更新
- 「ツール → オプション → Projects and Solutions → Azure Functions → Check for updates」
- 「Download and install」でテンプレート v4.105 以降を取得し VS を再起動。
- これでドロップダウンに “.NET 8.0 Isolated / In-Process” が現れます。
4.18.1 がインストールされていると。
そして更新がある…



更新すると
4.106.0 になりました。だいぶ古かったですね。

。NET 8.0, .NET 9.0 がちゃんと現われて、古い6.0や7.0 が消えましたね。
なるほど。(おぃそこから!。ごめんなさい無知で)

ChatGPT o3 さん
調査中
ユーザーが提供したVisual Studio 2022のスレッドに基づいて、Azure Functionsのプロジェクトテンプレートで.NET 8や9を使用する方法を調べています。現時点では、Visual Studio 2022はAzure Functionsで.NET 7までしかサポートしていません。 .NET 8(LTS)のサポートは、Visual Studio 17.9や17.10のプレビュー版
確認中
Visual Studio 2022でAzure Functionsの最新ツールを使う場合、.NET 8のisolated workerサポートについて調べているところです。Azure Functions v4は現状で.NET 6と7をサポートし、.NET 8はプレビューに対応している可能性がありますが、正確な情報を得るために調査が必要です。検索で「Azure Functions .NET 8 isolated worker Visual Studio 2022」などを調べ、最新の情報を確認しつつ、テンプレートが表示されないことも考慮する必要があります。
手順確認中
Visual Studio 2022や2025のプレビュー版をインストールして、.NET 9も考慮する必要があるみたい。Visual Studio 17.10プレビューには.NET 9が含まれているが、Azure Functionsテンプレートにまだ完全に統合されていない可能性があるため、手動で修正する必要があるかも。あと、.NET 8のAzure Functionsテンプレートは一部利用可能になったが、dotnet CLI
を使って設定する方法も考えるべきですね。
調査中
検索結果から確認したところ、.NET 8のisolatedモデルがVS 2022 v17.9.3では表示されないことが報告されています。いくつかのリソースでは、.NET 8や.NET 9(プレビュー)のサポートが述べられていますが、この機能はまだ完全に統合されていないようです。.NET 9の一般公開が予定されていますが、Visual Studio 2022の新しいテンプレートでは、これらのバージョンがどのように反映されるのかを確認する必要があります。
Visual Studioのバージョンと構成
Visual Studio 2022は、バージョン17.9以降(GA)に更新する必要があります。.NET 8のサポートには16.8以降が必要で、.NET 9のプレビューには17.10プレビューか17.12プレビューが必要です。.NET 8のAzure Functionsテンプレートは、バージョン4.105.0以降で利用可能で、Tools > Options > Projects and Solutions > Azure Functions > Check for Updatesでインストールできます。.NET 9のプレビューには、Visual Studio 17.12以降が必要です。
プロジェクトの作成方法
もしオプションが表示されない場合、.NET 8でプロジェクトを作成し、csprojのTargetFramework
をnet9.0
に変更し、Microsoft.Azure.Functions.Worker
をプレビューバージョン1.28に更新することができます。実際のところ、azure-functions-workerは5.xバージョンかもしれません。CLIを使用するアプローチもあります。たとえば:
dotnet new func --name MyFunc -f net8.0 --worker-runtime dotnet-isolated
.NET 9の場合:dotnet new func --name MyFunc -f net9.0 --worker-runtime dotnet-isolated --use-preview
詳細なCLIドキュメントを検索します。
プロジェクトの作成方法
もしオプションが表示されない場合、.NET 8で作成したプロジェクトのcsprojファイルを編集してTargetFramework
をnet9.0
に変更し、Microsoft.Azure.Functions.Worker
をプレビューバージョン1.28にアップグレードすることができます(またはazure-functions-worker 5.x)。CLIでは次のコマンドで作成できます:
dotnet new func --name MyFunc -f net8.0 --worker-runtime dotnet-isolated
.NET 9の場合:dotnet new func --name MyFunc -f net9.0 --worker-runtime dotnet-isolated --use-preview
必要な情報を集める
- Visual Studio 2022のテンプレートには最初は.NET 8/9が表示されないが、Azure Functionsテンプレートを更新すれば、.NET 8のisolated/in-processが表示される。
- .NET 8 SDKをインストールする必要がある。
- .NET 9はプレビュー版。Visual Studio Pre-releaseチャネルを使用し、Azure Functionsテンプレートをバージョン4.108+に更新し、.NET 9プレビューSDKとプレビューフィーチャーを有効にする必要がある。
基本的には、.NET 8テンプレートでプロジェクトを作成し、TargetFramework
をnet9.0
に変更する方法もある。
Azure Functions の設定
Visual Studioで、[ツール] > [オプション] > [プロジェクトとソリューション] > [Azure Functions] > [更新の確認]を選択すると、最新の「Azure Functions テンプレート v4.105+」がインストールされ、.NET 8 Isolated
や.NET 8 In-Process
が選択可能に。.NET 9プレビュー
を使用するには、プレビューフィーチャーを有効にし、v4.110+
のAzure Functionsテンプレートをインストール。その後、CLIを使ってプロジェクトを作成可能。
Azure Functionsの設定
Visual Studioで、[ツール] > [オプション] > [プロジェクトとソリューション] > [Azure Functions] > [更新の確認]を選択すると、最新のAzure Functionsテンプレート(v4.105+)がインストールされます。これにより、新しいプロジェクトウィザードで.NET 8 Isolated
や.NET 8 In-Process
が表示されます。.NET 9 Preview
を使うには、プレビューフィーチャーを有効にし、プレビューバージョンのAzure Functionsテンプレートをインストール。またはCLIを使って作成できます。
Visual Studioでの.NET 8/9の設定方法
- Visual Studioを最新バージョンに更新(安定版またはプレビュー)。
- .NET 8: Visual Studio 2022 17.9以上。
- .NET 9(プレビュー):Visual Studio 2022プレビューチャンネル17.12+を利用し、「Use previews of .NET SDK」を有効にする。
- .NET 8または9 SDKのインストール。
- Azure Functionsツールの更新: [ツール] > [オプション] > [プロジェクトとソリューション] > [Azure Functions]で「更新の確認」をクリック、インストール。
- CLIコマンド使用例:
dotnet new func -lang C# --worker-runtime dotnet-isolated -f net8.0 -n MyFuncApp
。
思考時間: 1m 24s
Visual Studio 2022 で .NET 8 / .NET 9 の Azure Functions プロジェクトを作る手順
(画像のドロップダウンに 7.0 までしか出てこない場合の対処)
1. 前提チェック
項目 | .NET 8 (LTS) | .NET 9 (Preview) |
---|---|---|
VS 2022 バージョン | 17.9 以降(最新安定版でOK) | 17.12 以降の Preview チャネル |
.NET SDK | dotnet-sdk-8.x | dotnet-sdk-9.x-preview |
Functions ランタイム | v4(既定) | v4(.NET 9 はプレビュー扱い) |
実行モデル | In-Process / Isolated どちらも可 | Isolated のみ |
Azure Functions の公式対応表にも、Isolated で net8.0
GA、net9.0
Preview が明記されています。(マイクロソフトラーニング)
2. テンプレートが見えないときの定番手順
- Visual Studio を最新に更新
ヘルプ → 更新プログラムの確認
から 17.9 以上 (または Preview) に。
- .NET SDK をインストール
- [公式ダウンロード] から 8 または 9 Preview SDK を入れ、
- VS の 「ツール → オプション → 環境 → Preview 機能 → Use previews of .NET SDK」 を ON(.NET 9 のみ)。
- Functions テンプレートを更新
- 「ツール → オプション → Projects and Solutions → Azure Functions → Check for updates」
- 「Download and install」でテンプレート v4.105 以降を取得し VS を再起動。
- これでドロップダウンに “.NET 8.0 Isolated / In-Process” が現れます。(Stack Overflow)
- .NET 9 がまだ出てこない場合
- VS Preview 17.12+ & SDK 9 を入れたうえで、同じテンプレート更新を再度実行。
- それでも出ない場合は
%LOCALAPPDATA%\AzureFunctionsTools
を削除してキャッシュをクリア → VS 再起動。(Stack Overflow)
3. CLI で先に作って VS で開く方法(確実)
# Isolated worker, .NET 8dotnet new func -n MyFuncApp -f net8.0 \ --worker-runtime dotnet-isolated# Isolated worker, .NET 9 Previewdotnet new func -n MyFuncApp -f net9.0 \ --worker-runtime dotnet-isolated \ --use-preview
このプロジェクトを Visual Studio で開けば、自動的にターゲット フレームワークを認識してビルドできます。(マイクロソフトラーニング)
4. 既存テンプレートを強制書き換えするワークアラウンド
.NET 6/7 Isolated
テンプレートで作成.csproj
を手動で修正<TargetFramework>net8.0</TargetFramework> <!-- 9.0 でも可 --> <AzureFunctionsVersion>v4</AzureFunctionsVersion>
- NuGet を最新 (例:
Microsoft.Azure.Functions.Worker 1.27.x
以上) に更新- .NET 9 Preview の場合は
*-preview
が付くパッケージを選択
- .NET 9 Preview の場合は
5. よくあるハマりポイント
症状 | 原因と対処 |
---|---|
ドロップダウンに 8/9 が無い | VS 本体か Functions テンプレートが古い |
デバッグ開始時に HostEndpoint エラー | Azure Functions Core Tools が古い → npm i -g azure-functions-core-tools@4 |
9.0 でビルドは通るが Portal で関数が表示されない | .NET 9 は プレビュー。ランタイムがまだ GA していないリージョンでは動作しない場合あり (Issue #2817 を参照)。(GitHub) |
まとめ
- .NET 8 は VS 2022 (17.9+) + 最新 Azure Functions テンプレートを入れれば GUI だけで作成可能。
- .NET 9 は Preview チャネル + SDK 9 Preview + テンプレート更新 + Preview 機能 ON が必要。
- 万一 GUI に出てこなくても、
dotnet new func -f net8.0/net9.0
でプロジェクトを生成し、VS で開く方法なら確実に作成できます。
これで .NET 8 / 9 の Azure Functions プロジェクトを VS 2022 から始められるはずです。お試しください!
コメントを残す