Azure 函数中的 Autofac 依赖注入
Autofac Dependency Injection in Azure Function
我正在尝试在 Azure 函数中使用 Autofac IOC 实现 DI。
我需要构建容器,但不确定将构建容器的代码放在哪里
Azure Functions 尚不支持依赖注入。关注此问题以获取功能请求
https://github.com/Azure/Azure-Functions/issues/299
我想现在你需要做一些丑陋的事情,比如:
public static string MyAwesomeFunction(string message)
{
if (MyService == null)
{
var instantiator = Initialize();
MyService = instantiator.Resolve<IService>();
}
return MyService.Hello(message);
}
private static IService MyService = null;
private static IContainer Initialize()
{
// Do your IoC magic here
}
虽然 Azure Functions 不支持开箱即用的 DI,但可以通过新的扩展 API 添加它。您可以使用 IExtensionConfigProvider 实现注册容器。您可以在此处 https://blog.wille-zone.de/post/azure-functions-proper-dependency-injection/.
找到 Azure 中的完整示例 DI 解决方案
您可以使用自定义 [inject] 属性来完成。请参阅此处的示例 https://blog.wille-zone.de/post/azure-functions-proper-dependency-injection/
我确实写了一篇关于在 Azure Functions 中使用 Autofac 进行依赖注入的博客条目。看看这里:
Azure Function Dependency Injection with AutoFac: Autofac on Functions
它遵循与 Boris Wilhelms 类似的方法。
另一个基于鲍里斯方法的实现可以在 github 上找到:autofac dependency injection
-- 更新 ---
使用 Azure Function v2 可以创建基于 .net 标准的 nuget 包。看看
Azure Functions Dependency Injection with Autofac: Autofac on Functions nuget Package
我对主要问题写了一个不同的答案,有不同的解决方案,完全与主要问题相关。
以前的解决方案是手动初始化 DI 或使用装饰器方式进行初始化。我的想法是将 DI 与 Functions Builder 联系起来,就像我们使用 aspnet 一样,没有装饰器。
我不知道为什么我的 post 被@MartinPieters 删除了,好像根本就没人看。
我没有办法正式反对这个决定,所以我恳请版主再次阅读我的回答并取消删除。
我正在尝试在 Azure 函数中使用 Autofac IOC 实现 DI。 我需要构建容器,但不确定将构建容器的代码放在哪里
Azure Functions 尚不支持依赖注入。关注此问题以获取功能请求 https://github.com/Azure/Azure-Functions/issues/299
我想现在你需要做一些丑陋的事情,比如:
public static string MyAwesomeFunction(string message)
{
if (MyService == null)
{
var instantiator = Initialize();
MyService = instantiator.Resolve<IService>();
}
return MyService.Hello(message);
}
private static IService MyService = null;
private static IContainer Initialize()
{
// Do your IoC magic here
}
虽然 Azure Functions 不支持开箱即用的 DI,但可以通过新的扩展 API 添加它。您可以使用 IExtensionConfigProvider 实现注册容器。您可以在此处 https://blog.wille-zone.de/post/azure-functions-proper-dependency-injection/.
找到 Azure 中的完整示例 DI 解决方案您可以使用自定义 [inject] 属性来完成。请参阅此处的示例 https://blog.wille-zone.de/post/azure-functions-proper-dependency-injection/
我确实写了一篇关于在 Azure Functions 中使用 Autofac 进行依赖注入的博客条目。看看这里: Azure Function Dependency Injection with AutoFac: Autofac on Functions
它遵循与 Boris Wilhelms 类似的方法。 另一个基于鲍里斯方法的实现可以在 github 上找到:autofac dependency injection
-- 更新 ---
使用 Azure Function v2 可以创建基于 .net 标准的 nuget 包。看看 Azure Functions Dependency Injection with Autofac: Autofac on Functions nuget Package
我对主要问题写了一个不同的答案,有不同的解决方案,完全与主要问题相关。
以前的解决方案是手动初始化 DI 或使用装饰器方式进行初始化。我的想法是将 DI 与 Functions Builder 联系起来,就像我们使用 aspnet 一样,没有装饰器。
我不知道为什么我的 post 被@MartinPieters 删除了,好像根本就没人看。
我没有办法正式反对这个决定,所以我恳请版主再次阅读我的回答并取消删除。