C# MVC数据上下文中的两个不同连接字符串

C# MVC数据上下文中的两个不同连接字符串,c#,model-view-controller,dbcontext,C#,Model View Controller,Dbcontext,我目前设置了2个dbcontext类,它们使用不同的连接字符串。每当我试图从“Cedulados”表中选择时,出于某种原因,它都会使用“DefaultConnection”字符串。我做错了什么 public class DataContext : DbContext { public DataContext() : base("DefaultConnection") { } public DbSet<SEG_CEmpleados> Em

我目前设置了2个dbcontext类,它们使用不同的连接字符串。每当我试图从“Cedulados”表中选择时,出于某种原因,它都会使用“DefaultConnection”字符串。我做错了什么

public class DataContext : DbContext
{
    public DataContext()
       : base("DefaultConnection")
    {
    }

    public DbSet<SEG_CEmpleados> Empleados { get; set; }
    public DbSet<SEG_CEmpNuevo> EmpleadosNuevos { get; set; }
    public DbSet<SEG_Estados> Estados { get; set; }
    public DbSet<SEG_Tarjetas> Tarjetas { get; set; }
    public DbSet<SEG_Visitantes> Visitantes { get; set; }
    public DbSet<SEG_Tipos> Tipos { get; set; }
    public DbSet<SEG_TiposDoc> TiposDoc { get; set; }

    public DbSet<SEG_Departamentos> Departamentos { get; set; }
    internal void Refresh(RefreshMode clientWins, object articles)
    {
        throw new NotImplementedException();
    }

}

public class CeduladosContext : DbContext
{
    public CeduladosContext()
       : base("Cedulados")
    {
    }

    public DbSet<Cedulados20110712> Cedulados { get; set; } 

    internal void Refresh(RefreshMode clientWins, object articles)
    {
        throw new NotImplementedException();
    }
}

public JsonResult PerCedula(string id)


{
    string mun = id.Substring(0, 3);
    string seq = id.Substring(3, 7);
    string ver = id.Substring(10, 1);

    var context = new CeduladosContext();

    var ced = context.Cedulados.FirstOrDefault();

    return Json(ced, JsonRequestBehavior.AllowGet);
}
公共类DataContext:DbContext
{
公共数据上下文()
:base(“默认连接”)
{
}
公共DbSet Empleados{get;set;}
公共DbSet EmpleadosNuevos{get;set;}
公共数据库集Estados{get;set;}
公共DbSet Tarjetas{get;set;}
公共数据库集访问{get;set;}
公共DbSet Tipos{get;set;}
公共DbSet TiposDoc{get;set;}
公共DbSet departmentos{get;set;}
内部无效刷新(刷新模式客户端WINS、对象文章)
{
抛出新的NotImplementedException();
}
}
公共类CeduladosContext:DbContext
{
公共CeduladosContext()
:base(“Cedulados”)
{
}
公共DbSet Cedulados{get;set;}
内部无效刷新(刷新模式客户端WINS、对象文章)
{
抛出新的NotImplementedException();
}
}
公共JsonResult PerCedula(字符串id)
{
字符串mun=id.Substring(0,3);
string seq=id.Substring(3,7);
string ver=id.Substring(10,1);
var context=new ceduladoscoxt();
var ced=context.Cedulados.FirstOrDefault();
返回Json(ced,JsonRequestBehavior.AllowGet);
}

我在MSDN中搜索了DbContext构造函数,它说它使用数据库名或连接字符串作为参数。在您的问题中,您说您正在从Cedulados表中进行选择,您也正在将该表传递给DbContext。似乎应该传递数据库名而不是表名。或者您的数据库也被命名为“Cedulados”

下面是另一个资源,它演示了类似的代码,并对您发布的内容进行了解释


我在MSDN中搜索了DbContext构造函数,它说它以数据库名称或连接字符串作为参数。在您的问题中,您说您是从表Cedulados中选择的,您也要将该表传递给DbContext。您似乎应该传递数据库名称,而不是表名称。或者您的数据库也有名称吗“塞杜拉多斯

下面是另一个资源,它演示了类似的代码,并对您发布的内容进行了解释

试试这个(注意构造函数参数中的“name=”):

您可以找到更多信息。

试试这个(注意构造函数参数中的“name=”):

你可以找到更多的信息

public DataContext() : base("name=DefaultConnection")
public CeduladosContext() : base("name=Cedulados")