Microsoft.Azure.WebJobs.Extensions.Http でエラーになってFunctionsが起動しない

Azure Functions v4の .NET なプロジェクトでNuGetパッケージ更新したりしたら以下のエラーがでて実行できない場合があります。

A host error has occurred during startup operation 'xxxxxxx-xxxx-xxxxx-xxxx-xxxxxxxxx'.
Microsoft.Azure.WebJobs.Extensions.Http: Could not load file or assembly 'System.Net.Http.Formatting, Version=5.2.8.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. 指定されたファイルが見つかりません。.
Value cannot be null. (Parameter 'provider')

特定バージョンだけな気がしますが、該当しそうなのは以下のIssueです。

なんだか釈然としませんが、対処方法としては以下のようにします。

  1. Microsoft .NET SDK を再インストールする。
  2. Azure Functions Core Tools の最新をインストール(再インストール)する。

一時的な問題だと思いますが、、(たまにこの手の問題に遭遇する)

Azure AD テナントを削除するときにエンタープライズアプリケーションが削除できない

Azure ADテナント(Azure AD B2Cを含む)を削除するときにはいろいろ手順を踏まないといけませんが、その中でも面倒なのが Microsoftのファーストパーティーアプリケーション(Microsoft First Party Application) とかいうやつです。
テナント削除時は登録したユーザーやアプリケーションなど関連リソースは全部消してからでないとテナント削除できませんが、このファーストパーティーアプリケーションは削除が無効化されてたりします。

ちゃんと(?)削除する場合は松村さんが書いてるPowerShellとかで削除するといいですが、もう削除しようとしているテナントの為にAzure PowerShell環境用意したり、Cloud Shellがんばったりするの面倒ですよね。

Microsoft ファーストパーティー以外のアプリは削除しておかないといけませんが、Microsoftファーストパーティーのアプリはサインインさえできなくなっていれば実は問題ない感じです。

というわけで「ユーザーのサインインが有効になっていますか?」を「いいえ」にして保存すれば無理に削除しなくてもテナント削除できる可能性があります。

という感じで削除したい場合に試してみてください。

続きを読む