项目
版本

Autofac Blazor 集成

ASP.NET Core Blazor 使用 ASP.NET Core 3+ 中的通用应用托管,但两种 托管模型 的集成略有不同。

服务器端 实现与任何其他 ASP.NET Core 3 应用程序的配置方式完全相同。

客户端 注入稍微受到限制,因为需要 WebAssembly 托管的要求。

此 WebAssembly 示例适用于 2021 年 3 月 30 日的 .NET 5。示例:

public class Program
{
    public static async Task Main(string[] args)
    {
        var builder = WebAssemblyHostBuilder.CreateDefault(args);
        builder.ConfigureContainer(new AutofacServiceProviderFactory(ConfigureContainer));

        builder.RootComponents.Add<App>("#app");

        await builder.Build().RunAsync();
    }

    private static void ConfigureContainer(ContainerBuilder builder)
    {
        // 在这里添加任何注册项
    }
}

一旦注册,Blazor 组件可以通过 依赖注入 使用 标准 @inject Razor 指令

在本文档中