- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Azure Function(v3),我可以在 startup.cs 中使用 IWebJobsStartup 和 FunctionsStartup 注册依赖项。
但是我们应该使用哪一个呢?
向 IWebJobsStartup 注册依赖项
[assembly: WebJobsStartup(typeof(Startup))]
namespace Notifications.Receiver
{
public class Startup : IWebJobsStartup
{
public void Configure(IWebJobsBuilder builder)
{
builder.Services.AddTransient<IEventValidator, EventValidator>();
builder.Services.AddTransient<IEventReceiverHandler, EventReceiverHandler>();
builder.Services.AddTransient<IEventHandler<InvoiceResultDto,InvoiceMessageEvent>, InvoiceMessageEventHandler>();
builder.Services.AddTransient<IEventHandler<InvoiceResultDto, InvoiceFileEvent>, InvoiceFileEventHandler>();
builder.Services.AddSingleton<IMessageBusFactory, AzureServiceBusFactory>();
builder.Services.Configure<KestrelServerOptions>(options =>
{
options.AllowSynchronousIO = true;
});
}
}
}
同样的依赖我也可以用FunctionsStartup注册
[assembly: FunctionsStartup(typeof(Startup))]
namespace Notifications.Receiver
{
public class Startup : FunctionsStartup
{
public override void Configure(IFunctionsHostBuilder builder)
{
builder.Services.AddTransient<IEventValidator, EventValidator>();
builder.Services.AddTransient<IEventReceiverHandler, EventReceiverHandler>();
builder.Services.AddTransient<IEventHandler<InvoiceResultDto,InvoiceMessageEvent>, InvoiceMessageEventHandler>();
builder.Services.AddTransient<IEventHandler<InvoiceResultDto, InvoiceFileEvent>, InvoiceFileEventHandler>();
builder.Services.AddSingleton<IMessageBusFactory, AzureServiceBusFactory>();
builder.Services.Configure<KestrelServerOptions>(options =>
{
options.AllowSynchronousIO = true;
});
}
}
}
最佳答案
据我所知,在 Azure Functions 中,现在进行依赖注入(inject)的首选方法是使用 FunctionsStartup
。
是的,如果我们在Startup.cs中实现IWebJobsStartup
接口(interface),我们必须实现Configure(IWebJobsBuilder builder)
方法 类。
而 current MSFT Doc表示从 FunctionsStartup 类继承的 Startup 类以及 Configure
方法采用 IFunctionsHostBuilder
.
这个类似thread解释了在 Azure Functions .NET Applications
中使用 FunctionsStartup 与 IWebJobsStartup 读取请求中的 HTTP header 的问题以及最后建议使用 FunctionsStartup 是更好的方法。
关于c# - 天蓝色函数 : Difference between IWebJobsStartup and FunctionsStartup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72404752/
我正在使用 Azure Function(v3),我可以在 startup.cs 中使用 IWebJobsStartup 和 FunctionsStartup 注册依赖项。 但是我们应该使用哪一个呢?
如何访问 Functions Startup 类中的 ExecutionContext.FunctionAppDirectory 以便我可以正确设置我的配置。请参阅以下启动代码: [assembly:
我正在尝试通过 Visual Studio 和 CLI 使用 V2 运行时创建一个 Azure 函数。但是当我运行它时,我看到以下错误: [9/30/2018 3:11:06 PM] No job f
我正在使用Azure Function v2。这是我使用构造函数注入(inject)的函数: public sealed class FindAccountFunction { private
我是一名优秀的程序员,十分优秀!