gpt4 book ai didi

c# - Entity Framework 代码优先迁移不会获取对模型类的更改

转载 作者:行者123 更新时间:2023-11-30 16:10:29 26 4
gpt4 key购买 nike

我在 Visual Studio 2012 中创建了一个新项目,我有 3 个项目:

  • TestMVC => 一个 ASP.NET MVC 5 项目
  • TestContext => 包含我的 TestContext 类的类库项目,该类继承自 DbContext 类。
  • TestDomainClasses => 包含我的模型类的类库项目。

我在 TestDomainClasses 项目中创建了一个这样的类:

public class Topic
{
public int ID;
public string Title;
}

在我的 TestContext 类中:

public DbSet<Topic> Topics;

我还设置了一个连接字符串以指向我的本地 SQL Server。现在,我已经使用 Enable-Migrations 命令启用了迁移。

它创建了 Migrations 文件夹,其中有一个 Configuration.cs 文件。

接下来,我正在尝试创建用于创建 Topic 类的初始迁移:

Add-Migration InitialMigration

它创建了新的迁移,但是 updown 方法是空的。我尝试向 Topic 类添加另一个属性并再次重新运行 Add-Migration InitialMigration,但它为我生成了一个空迁移。

我很困惑这里出了什么问题?

最佳答案

您需要将 getter 和 setter 添加到 DbSet 声明中。

public DbSet<Topic> Topics { get; set; }

我更喜欢在 IdentityModels.cs 文件(在 Models 文件夹中)中添加对 ApplicationDbContext 类的引用

public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
{
public DbSet<Topic> Topics { get; set; }

//rest of the stuff
}

关于c# - Entity Framework 代码优先迁移不会获取对模型类的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25707924/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com