首先将数据库表从一个数据库复制到另一个DB EF代码

时间:2017-08-18 10:29:35

标签: c# .net entity-framework ef-code-first

我有一个包含两个表的数据库:

Employee       Salary
========      ================
Id Name        Id EmpId  Salary

当然每个表都有一个类来实现代码首次迁移。

有没有办法将数据库表从源数据库复制到另一个数据库,并使用EF代码优先更改表的名称?

PS:此方法的目标是使用默认结构创建默认数据库,并且当新客户端寄存器在现有数据库中使用新名称创建自己的表时

2 个答案:

答案 0 :(得分:0)

最简单的方法是首先针对您尝试从中复制表的数据库运行代码(Add-> New Item - > Data - > ADO.NET Entity Data Model - > Code First from数据库。)勾选要导入的表。完成后,删除web.config中的Entity DBContext和连接字符串。这将从您尝试创建的数据库中创建所有模型。将它们添加到您的模型中;完成。

public DbSet<StudentsModel> MyNewTable{ get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder) {
     modelBuilder.Entity<MyNewTable>().ToTable("MyTable");

答案 1 :(得分:-1)

在这种情况下,实体框架层代码会因客户端而异吗? 由于您将在一个客户端上拥有比另一个客户端更多的表。 您可以更改名称 。modelBuilder.Entity()ToTable(&#34; mytesttablename&#34);流畅的API OR表属性 [表(&#34; mytesttablename&#34)] 公共课考试 { } 等