我应该使用EntityTypeConfiguration
来构建我的数据模型,还是应该直接启用迁移和使用DbMigration
.
那就是使用:
public class BlogEFCFConfiguration : EntityTypeConfiguration<Blog> {
public BlogEFCFConfiguration()
: base() {
HasKey(x => x.BlogId);
Property(x => x.BlogId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
Property(x => x.Name).HasColumnType("varchar").HasMaxLength(128);
}
}
或者
public partial class InitialCreate : DbMigration {
public override void Up() {
CreateTable(
"dbo.Blogs",
c => new
{
BlogId = c.Int(nullable: false, identity: true),
Name = c.String(maxLength: 128, unicode: false),
})
.PrimaryKey(t => t.BlogId);
}
public override void Down() {
DropTable("dbo.Blogs");
}
}
事实上,如果我想改变我的模型,我将不得不最终使用DbMigration
. 那么为什么要使用EntityTypeConfiguration
呢?
这可能是一个过于开放的问题。