项目
版本

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) { // 在这里添加任何注册项 } }
C#

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