0

我是实体框架的新手。我已经有现有的数据库。我设法映射我的数据库表并生成 c# 类,但我有几个问题。

  1. 有没有办法将几个表的代码生成到单个文件中?在单个文件中包含与用户相关的类对我非常有帮助。
  2. 我的下一个问题是指从数据库更新模型。当我更改数据库中的字段名称并更新模型时,我在刷新后添加了新字段。不幸的是,旧字段仍保留在我的实体中,我必须手动将其删除。

    是否有任何解决方案告诉 VS 从实体中删除这些无效字段?

谢谢!

4

1 回答 1

0

1)您的实际代码文件是从 t4 模板生成的。您可以使用任何您想要生成它们的模板。为此,请右键单击 .edmx 文件中的画布并选择“添加代码生成项”。它将向您的项目添加几个 *.t4 文件。nuget 包管理器中有一些可用的模板。您甚至可以手动编辑它们(尽管它们很难理解)

2)从数据库更新模型时,您可以删除整个表,然后重新添加它。

另外,看看“代码优先”的方法。您基本上创建了一堆 poco 类,然后将 DbContext 子类化:

public class MyContext : DbContext
{
    public DbSet<MyEntity> MyEntities { get; set; }
    public DbSet<MyCoolEntity> MyCoolEntities { get; set; }
    /* ... */
}

不需要 .edmx 文件。实体框架将为您处理数据库。

于 2013-03-06T18:01:03.443 回答