【问题标题】:use multiple dbContext in one application在一个应用程序中使用多个 dbContext
【发布时间】:2013-12-10 20:52:59
【问题描述】:

我正在努力在 ASP.NET MVC 5 中将多个 dbContext 与单个 Web 应用程序一起使用。我正在遵循代码第一个现有的数据库设计方法。

我需要指导如何做到这一点,例如如果我使用 ADO.NET 创建 5 个模型,它将创建 5 个 dbContext 及其模型类。

它将如何在 web.config 文件中更改?

非常感谢

 public partial class DefaultContext : DbContext
{
    public DefaultContext()
        : base("name=DefaultContext")
    {
    }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        throw new UnintentionalCodeFirstException();
    }

    public virtual DbSet<AspNetRole> AspNetRoles { get; set; }
    public virtual DbSet<sys_Actions> sys_Actions { get; set; }
    public virtual DbSet<sys_ActionsInRole> sys_ActionsInRole { get; set; }
    public virtual DbSet<sys_Controllers> sys_Controllers { get; set; }
    public virtual DbSet<sys_Functions> sys_Functions { get; set; }
    public virtual DbSet<sys_FunctionsHierarchy> sys_FunctionsHierarchy { get; set; }
}

【问题讨论】:

    标签: asp.net-mvc entity-framework entity


    【解决方案1】:

    基本上,对于每个 dbContext,您需要在 web.config 文件的 connectionStrings 部分中添加一个具有唯一名称的新连接字符串

    这是一个例子:

    <connectionStrings>
        <add name="dbContext1" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=dbServer;initial catalog=db1;integrated security = true;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />
        <add name="dbContext2" connectionString="metadata=res://*/Model2.csdl|res://*/Model2.ssdl|res://*/Model2.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=dbServer;initial catalog=db1;integrated security = true;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />
    </connectionStrings>
    

    【讨论】:

    • 这是可以建议的吗,为什么我说我希望根据上下文分离模型,并且当您创建新的 ADO.NET 实体模型时创建新的 dbContext ???
    猜你喜欢
    • 2018-09-22
    • 1970-01-01
    • 2012-11-02
    • 1970-01-01
    • 2019-05-22
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    相关资源
    最近更新 更多