我应该使用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");
}
}那么为什么要使用EntityTypeConfiguration呢?
这可能是一个过于开放的问题。
发布于 2013-07-23 16:46:29
他们在做不同的工作- EF迁移可确保应用程序和数据库的更改保持一致。这些配置告诉EF如何从对象模型映射到关系模型。
当默认约定不适合您的模型时,需要进行配置。
如果您希望在应用程序版本之间对代码中的数据库更改进行建模,则需要EF迁移。例如,这样做的好处是能够让应用程序在启动时自动将数据库更新为最新版本。
https://stackoverflow.com/questions/17805394
复制相似问题