EF 自动修改数据库

1.配置类

internal sealed class Configuration<TContext> : DbMigrationsConfiguration<TContext> where TContext : DbContext
{
public Configuration()
{
    AutomaticMigrationsEnabled = true;

AutomaticMigrationDataLossAllowed = true;
}

protected override void Seed(TContext context)
{

}
}

2.初始化类

public class SchoolContext : DbContext
{
public SchoolContext() : base("name=test")
{
}
static SchoolContext()
{
Database.SetInitializer(new MigrateDatabaseToLatestVersion<SchoolContext, Configuration<SchoolContext>>());
}

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
   modelBuilder.Configurations.AddFromAssembly(Assembly.GetExecutingAssembly());

}
}

3.实体类

public class Course { public int StudentID { get; set; } public string Name { get; set; } }

好。搞定。就这么简单。我也研究了半天,看了很多资料。就可以修改实体类看看数据库的变法吧。

时间: 2024-12-07 09:25:19

EF 自动修改数据库的相关文章

完善实体类,由EF自动生成数据库过程中的一些问题

①.配置两表间的关系时WillCascadeOnDelete(false)取消级联删除 public AdminLogConfig() { this.ToTable("T_AdminLogs"); this.Property(a => a.Msg).IsRequired(); this.HasRequired(a => a.AdminUser).WithMany().HasForeignKey(a => a.AdminUserId).WillCascadeOnDele

关于EF自动生成数据库

1.设置好数据库连接字串 在项目中,找到 app.config(没有则在项目根目录手动新增,这里的设置只对本项目有效,不会影响到 Web 项目中的设置).配置 <connectionStrings> 节点,新增 <add name="MyDBConnectString" providerName="System.Data.SqlClient" connectionString="datasource=.;initial catalog=M

EF修改model自动更新数据库

最近用MVC+EF学习时遇到修改model后而数据库没更新报错,就在网上找关于数据迁移自动更新数据库的,折腾了大半天终于弄了出来 第一步:在程序包管理器控制台里: Enable-Migrations -ProjectName EF所在的项目名称 第二步:运行后会在字段生成Migrations文件夹,Migrations->Configuration.cs 类里把AutomaticMigrationsEnabled改为true(即设为model有改动自动更新数据库) 如有删除字段则要加 Autom

EF CodeFirst 如何通过配置自动创建数据库&lt;当模型改变时&gt;

最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    本篇为进阶篇,也是弥补自己之前没搞明白的地方,惭愧惭愧. 如有不明白,请参考:EF CodeFirst 创建数据库 及 EF CodeFirst增删改查之'CRUD' 话不多说,直接上代码: using System; using System.Collections.Generic; using System.Linq; using System

EF自动生成的(T4模板) 关联属性元数据修改

为了实现 T4模板关联属性 不要序列化的问题 就是要在具体的 关联属性上面添加一个元数据 这里利用以前的 Newtonsoft.Json 这个框架为例 效果应该为 就是要在关联属性上面添加元数据  [JsonIgnore] 注意: 默认会报错,如下 请记住错误个数,多了就证明你写的有问题.而且你不要奇怪有这么多错误. 如果你不出现这么多个错误提示,你就应该去找一下模板 如下的位置. 步骤 1.导入命名空间.不然出来的全是BUG //添加引用public string UsingDirective

MVC + EF 框架 对数据库做增删改查

这几天一直在看MVC 开发模式,其中借助EF框架对数据库进行 增删改查操作 现在就小小的总结一下吧 在使用EF操作数据库时,会首先添加 ADO.NET数据模型,这时,会为我们添加一个数据上下文类,使用这个类的对象可以对数据库做任何操作.所以在使用EF操作数据库之前 需要创建数据上下文对象. MyDatabaseEntities mde = new MyDatabaseEntities(); 1.使用EF 对数据库 做增加操作 1.1 创建一个需要被操作数据表的对象(一般来说 ,一张表就是一个实体

EF初始化mysql数据库codefirst

EF使用Code First修改生成数据库表名的方法 1. 重写OnModelCreating,去掉表名复数 System.Data.Entity.ModelConfiguration.Conventions; public class MovieDBContext : DbContext     {         public DbSet<Movie> Movies { get; set; }         protected override void OnModelCreating(

EF Codefirst生成数据库的三种方式

1.写在前头 不是什么高大上的东西,也不是完全原创的,大多是自己学习时去网上查的各种资料.只是发现学东西还是要写点东西,不然前边写着后边忘了,花的时间都浪费了,写写增加记忆吧.如果是有人刚开始学看到这个相信会有帮助的. 2.开搞 前几天写了篇小文章搞了下EF生成数据库时获取连接字符串的方式,发布时不小心勾选了发布到首页,秒秒钟就被管理员给撤销了( ⊙ o ⊙ ),确实太低端了,博客园锅锅撤销也是可以理解的,废话不多说,今天继续搞一搞获取完连接字符串后EF怎么生成数据库呢,有哪些方式呢? 第一种:

EF三种数据库操作模型比较

https://blog.csdn.net/xiongmeiqin/article/details/80196089 EF 中 Code First 的数据迁移以及创建视图 写在前面: EF 中 Code First 的数据迁移网上有很多资料,我这份并没什么特别.Code First 创建视图网上也有很多资料,但好像很麻烦,而且亲测好像是无效的方法(可能是我太笨,没搞成功),我摸索出了一种简单有效的方法,这里分享给大家. EF是Entity Framework(实体框架)的简写,是微软出品的用来