gpt4 book ai didi

asp.net-mvc - 多个 DbContext,多个 Database.SetInitializer

转载 作者:行者123 更新时间:2023-12-04 05:41:04 25 4
gpt4 key购买 nike

我创建了两个 DbContext,一个用于应用程序配置,第二个用于日志记录。

原因是,我想在日志记录数据库上设置最大大小,这样它就不会用完所有可用磁盘空间并阻止其他数据库工作。

在我的 global.asax.cs 文件中,我有以下内容:

        protected void Application_Start()
{

AreaRegistration.RegisterAllAreas();

RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);

Database.SetInitializer<AdminContext>(new AdminInitialiser());
Database.SetInitializer<LoggingContext>(new LoggingInitialiser());
}

未调用 LoggingInitialiser 中的 InitializeDatabase 方法。这是因为只能设置一个初始化程序吗?有没有办法为两个 DbContext 设置初始化程序?

最佳答案

而是在 DbContext 构造函数中设置初始值设定项。

public class AdminContext : DbContext
{
public AdminContext()
{
Database.SetInitializer(new AdminInitialiser());
}
}

public class LoggingContext : DbContext
{
public LoggingContext()
{
Database.SetInitializer(new LoggingInitialiser());
}
}

关于asp.net-mvc - 多个 DbContext,多个 Database.SetInitializer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11190310/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com