数据库
首页 > 数据库> > CodeGo.net>如何知道项目是代码优先或数据库优先?

CodeGo.net>如何知道项目是代码优先或数据库优先?

作者:互联网

在现有项目中,我如何知道它是代码优先还是数据库优先?

项目具有以下代码行:

public class TestDBContext : DbContext
{
    public DbSet<Player> Players { get; set; }

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
    }
}

并且项目没有.edmx文件.如果需要其他详细信息,我将与您分享.

编辑:

Player.cs类

public class Player
{
    public int PlayerID { get; set; }
    public string PlayerName { get; set; }
}

编辑12.05.2017

如果我从连接字符串更改数据库名称并运行项目,它将使用所有表的新名称创建数据库.也许这将是答案.

解决方法:

如果这是一个数据库优先的项目,则有:

> [name] .edmx图表文件,以及[name] .Context.tt& .cs
>每个转换为类的表都隐藏在树中,如.edmx> .tt
>在onModelCreating中,抛出了一个新的UnintentionalCodeFirstException()

如果不是,则表中的所有类问题都在项目中(没有树).

标签:ef-code-first,c,entity-framework,db-first
来源: https://codeday.me/bug/20191111/2019470.html