我们每篇的内容都不多,所以希望在学习的过程中最后能亲自敲一下代码 这样更有利于掌握。
我们现在接着上篇的例子,我们现在给随便的表增加一个字段 CreateTime 创建日期 运行一下 看看会怎么样
修改实体类,代码给大家分享一下
{
/// <summary>
/// 随笔的主键id
/// </summary>
public int PostId { get; set; }
// 随笔的标题
public string PostTitle { get; set; }
/// <summary>
/// 操作人
/// </summary>
public int BlogUserId { get; set; }
/// <summary>
/// 创建日期
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 延迟加载博客用户
/// </summary>
public virtual BlogUser BlogUser { get; set; }
}
运行一下。
你会看到如上的这个错误。这章本来应该作为第2篇,因为如果你亲自试过了的话,当你修改实体的属性关系,也会同样报这个错
如果你也出现了这个错误,恭喜你 ,你正在进步!
看字面的意思 你也能明白,他让我们使用Migrations进行数据库更新迁移。
那具体怎么操作呢,那我们就直接开始了!!!
一、启用自动迁移
1、在 Package Manager Console 下运行命令 Enable-Migrations,完成之后你就会看到如下:
生成了两个类:
这两个类干什么的呢?暂时先不解释 后面的话会在讲解的。这里我分享一个关于迁移的博文有兴趣可以看一下
没兴趣的继续往下看!!
2、EF6 本身已经集成了Migrations 那我们主要演示的是手动去完成迁移的工作,实现在应用程序启动时自动升级
1) 我没有采用上面的方式,我是直接新建了一个Configuration类
2)我们直接来看代码
public class Configuration : DbMigrationsConfiguration<BlogDbContext>
{
/// <summary>
/// 初始化一个<see cref="MigrationsConfiguration"/>类型的新实例
/// </summary>
public Configuration()
{
//启用自动迁移
AutomaticMigrationsEnabled = true;
//获取或设置一个值表示如果在自动数据丢失是可以接受的 [慎重设置]
AutomaticMigrationDataLossAllowed = true;
}
}核心代码就两句,简单吧! 是不是觉得学习EF so easy! 不能用so easy因为我们这里说的都是最简单的。要想学深入还是由难度的。
3、然后在Global.asax里面添加一下代码,代表应用程序初始化的时候把数据库更新为最新的办法
4、运行效果
整篇文章中,需要写的代码也就不超过5行吧,所以也用了图片来替代,为了就是让学习的你能动手来试一下。
本文链接:一步一步学EF系列【3、数据迁移】,转载请注明。
Vim是Vi 的增强版本,它没有菜单。只有命令。 www.vim.org
官方教材:vimbook
插入
a | 在当前光标后插入文本 |
A | 在本行行尾插入文本 |
i | 在光标前插入文本 |
I | 在本行行首插入文本 |
o | 在光标下插入新行 |
O | 在光标上插入新行 |
h | 左移一个字符 |
j | 下移一个字符 |
k | 下移一个字符 |
I | 右移一个字符 |
$ | 移动至当前行的行尾 |
0 | 移动至当前行的行首(数字零) |
H | 移动屏幕上端 |
M | 移动至屏幕中央 |
订阅:
博文评论 (Atom)
|
没有评论:
发表评论