Sha*_*dra 4 azure static-classes azure-functions azure-function-app
Azure 函数中的构造函数注入和自定义遥测事件的集合需要此非静态类。
如果我们在 Visual Studio 中创建一个 azure 函数应用程序,它会使用 static 关键字创建默认值,如下所示:
public static async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequest req,
ILogger log)
{
telemetryClient.TrackEvent(new Exception("Function started"));
}
Run Code Online (Sandbox Code Playgroud)
但是要使用构造函数依赖注入(对于 Temeltry 客户端,我正在使用它),我们需要删除 static 关键字。
public Function1(TelemetryClient telemetryClient)
{
_telemetryClient = telemetryClient;
}
Run Code Online (Sandbox Code Playgroud)
以前,Azure 函数仅支持静态类/方法。这会导致一些问题,例如通过构造函数进行 DI 是不可能的。所以这个问题Support Instance Functions被提出来了。
因此,如果您需要通过构造函数使用 DI,只需将其更改为非静态即可。没有后果。
归档时间: |
|
查看次数: |
1190 次 |
最近记录: |