创建包含集合的 EF 4 迁移
本文关键字:迁移 EF 包含 集合 创建 | 更新日期: 2023-09-27 18:37:28
我正在尝试使用 EF4 为我的博客创建迁移,但我不确定如何将字段声明为通用集合,例如 Posts
.如何做到这一点?使用 智能感知时,没有可用于声明属性的泛型类型。
CreateTable("Blogs", t => new
{
Id = t.Int(false, true),
Title = t.String(),
BloggerName = t.String(),
Posts = t.ICollection<Post>() //no ICollection
}).PrimaryKey(k => k.Id);
我认为您首先将迁移与代码中的实体混合在一起,在这种情况下,您希望创建另一个名为"Posts"的表,该表将与"博客"表具有外键关系。
CreateTable("Posts", c => new
{
Id = c.Int(false, true),
Content = c.String(nullable: false, maxLength: 512)
}).PrimaryKey(k => k.Id)
.ForeignKey("Blogs", t => t.Id);
通常更容易将实体构建为类(首先是代码),然后让迁移工具在控制台中自行生成迁移,例如
Add-Migration "BlogPosts"