あなたが経験していることは、理想的ではありませんが、期待される動作です。ポータル体験のバグです。
関数ランタイムは、プリコンパイルされた関数のバイナリファイル内のメタデータを直接消費します。無効な機能の注釈のサンプルを示します。
[TimerTrigger("0 */5 * * * *"), Disable()]
これは、Visual Studioによって上記注釈を生成function.jsonあります。
{
"generatedBy": "Microsoft.NET.Sdk.Functions.MSBuild-1.0.2",
"configurationSource": "attributes",
"bindings": [
{
"type": "timerTrigger",
"schedule": "0 */5 * * * *",
"useMonitor": true,
"runOnStartup": false,
"name": "myTimer"
}
],
"disabled": true,
"scriptFile": "..\\bin\\FunctionApp3.dll",
"entryPoint": "FunctionApp3.Function1.Run"
}
プリコンパイルされた関数によって生成されたfunction.jsonは、ポータルで消費され、ポータルに表示されます。ポータルで機能の無効状態を変更すると、無効なプロパティはfunction.jsonで変更されますが、機能ランタイムでは消費されません。したがって、それは実行を続けます。
無効にした状態でデプロイすると、ランタイムはそれを認識し、期待どおりの状態にします。
私はこのバグを開いてポータル体験を修正しました。 https://github.com/Azure/azure-functions-ux/issues/1857
私は自分自身でこれを理解しているかもしれません...機能グループが有効になっている時点の機能の状態が決定要因であるようです。最後にグループを再起動して無効にしたときに、この機能を有効にしている可能性があります。私が最後にグループを開始したときに、その機能は既に無効になっていて、機能を開始しませんでした。実際には、関数の開始に問題があることを示すエラーメッセージが表示されます。 –