EF4数据库第一个可配置模式



我有一个问题几天来一直在努力解决,但我找不到正确的方法。我使用的是EF4,我有一个应用程序,我使用DataBaseFirst,它最初创建了ObjectContext,我加载了DbContext生成器并生成了它。

问题是,我需要应用程序能够从一些配置文件中获取数据库SCHEMA,而不是总是使用"dbo"默认值。我试图在"OnModelCreating"重载方法中使用"ToTable"方法(这样我就可以指定架构),但正如本文所说,由于我使用的是DataBaseFirst,所以没有调用该方法。

如何配置架构名称?这可能吗?我也读过这篇文章,文章中说我可以先将数据库和代码结合起来,但如果我不能使用"OnModelCreating"方法,我就看不到如何做到这一点。

提前感谢!!!

我不知道如何配置模式。但是,如果您希望将数据库优先方法更改为代码优先,只需更改DbContext构造函数的字符串参数即可。

假设您有以下DbContext,EF Db首先为您创建:

public class MyDbContext : DbContext
{
    public MyDbContext()
        : base("Name=DefaultConnection")
    {
    }
    // DbSets ...
}

将其更改为以下内容,以便首先开始使用代码及其所有神奇工具(迁移等):

public class MyDbContext : DbContext
{
    public MyDbContext()
        : base("YourDbFileName")
    {
    }
    // DbSets ...
}

这导致EF在web.config文件中的本地计算机上使用SQL Express创建一个新的连接字符串,名称为YourDbFileName,类似于最初创建的早期DefaultConnection Db。

你可能需要继续你的方式,就是根据你的服务器和其他选项编辑YourDbFileName ConStr。

相关内容

  • 没有找到相关文章

最新更新