我正在尝试使用Microsoft.Extensions.DependencyInjection
andAutofac.Extensions.DependencyInjection
包将 Autofac 与 .NET Core 控制台应用程序一起使用,但我的模块中的加载方法永远不会被调用,并导致Program
在解析期间为空。我希望它们在我调用AddAutofac()
扩展方法或构建服务提供者时加载。
using Autofac;
using Autofac.Extensions.DependencyInjection;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.IO;
public class Startup
{
private static void Main(string[] args)
{
var services = new ServiceCollection();
services.AddAutofac(builder =>
{
builder.RegisterModule(new MyFirstModule(configuration));
builder.RegisterModule(new MySecondModule(configuration));
});
using (var serviceProvider = services.BuildServiceProvider())
{
var program = serviceProvider.GetService<Program>();
program.Start();
}
}
}