几天后,我试图找到有关此问题的任何有用信息。
我想构建一个模块,以后我可以在其他应用程序中重复使用。重要的是它必须是可配置的。
我试图找到关于这两个问题的任何教程/文档,但找不到任何东西。我知道如何创建方法以便能够调用services.AddMyModule()
但我找不到任何关于传递配置并在稍后在模块中使用它的信息。
我真的很感激任何帮助。我希望我很清楚我在问什么。
答案 0 :(得分:1)
您可以使用其他参数定义静态IServiceCollection
方法,例如
public static MyModuleServiceCollectionExtensions
{
public static IServiceCollection AddMyModule(this IServiceCollection services, Action<DbContextOptionsBuilder<MyDbContext>> config
{
...
services.AddDbContext<MyDbContext>(config);
...
}
}
然后你可以在你的应用程序中调用它,如
services.AddMyModule(dbConfig => {
dbConfig.UseSqlServer(Configuration.GetConnectionString("DefaultConnection"));
});