LocalDB 的创建与迁移
首先创建对应的对象

public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
public string Rating { get; set; }
}
那么这个对象怎么和EF对应起来呢?那么就需要我们继承与他,并引入命名空间
using System.Data.Entity;
public class MovieDBContext:DbContext
{
public DbSet<Movie> Movies { get; set; }
}
然后配置Web.config


在这个connectionStrings节点下配置
我的配置如下,其中的名字也就是你继承至DBContext的那个类
<add name="MovieDBContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient" />
然后我们生成一个配置器


这个时候我们却发现它提示错误!!!!,不要紧编译生成一下就好

然后运行MoviesController就可以看到运行的效果

点击Create New

可以见到我们的应用程序运行正常,那么现在我们来做数据的迁移,首先删除原来的数据库


输入以下代码 Enable-Migrations -ContextTypeName Learn_LocalDb.Models.MovieDBContext 红色标记的地方为命名空间名称

然后就可以看到它生成了新的文件,我们点开它

代码如下:
internal sealed class Configuration : DbMigrationsConfiguration<Learn_LocalDb.Models.MovieDBContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;
} protected override void Seed(Learn_LocalDb.Models.MovieDBContext context)
{
}
}
插入一下代码
protected override void Seed(Learn_LocalDb.Models.MovieDBContext context)
{
context.Movies.AddOrUpdate(i => i.Title, //是为了程序的健壮性
new Movie
{
Title = "When Harry Met Sally",
ReleaseDate = DateTime.Parse("1989-1-11"),
Genre = "Romantic Comedy",
Rating = "PG",
Price = 7.99M
}, new Movie
{
Title = "Ghostbusters ",
ReleaseDate = DateTime.Parse("1984-3-13"),
Genre = "Comedy",
Rating = "PG",
Price = 8.99M
}, new Movie
{
Title = "Ghostbusters 2",
ReleaseDate = DateTime.Parse("1986-2-23"),
Genre = "Comedy",
Rating = "PG",
Price = 9.99M
}, new Movie
{
Title = "Rio Bravo",
ReleaseDate = DateTime.Parse("1959-4-15"),
Genre = "Western",
Rating = "PG",
Price = 3.99M
}
); }
然后运行程序,

然后再程序包控制台输入以下命令
add-migration 字段名称 执行完成以后执行 update-database 即可

LocalDB 的创建与迁移的更多相关文章
- laravel数据库的创建和迁移
数据库建立及迁移 Laravel 5 把数据库配置的地方改到了 `learnlaravel5/.env`,打开这个文件,编辑下面四项,修改为正确的信息: ? 1 2 3 4 5 6 7 DB_HOST ...
- 基于EF创建数据库迁移
通过创建的实体类和DbContext类利用EF的Code First数据库迁移创建数据库. 下面看代码. 一.先创建实体类 我先添加一个BaseEntity,里面就一个属性 [Key] public ...
- 通过virt-manager 利用NFS创建、迁移虚拟机2
前面一篇文章介绍了利用NFS创建虚拟机的过程,本文就介绍下如何利用NFS对虚拟机进行动态迁移. 动态迁移就是把一台虚拟机在不停止其运行的情况下迁移到另一台物理机上.这看起来似乎不太可能,不过还好kvm ...
- 通过virt-manager 利用NFS创建、迁移虚拟机1
NFS作为一种网络文件系统,近些年随着云计算的发展也变得越来越受欢迎.因为云环境下会部署大量的虚拟机,而在物理机发生故障的时候,云服务商必须要保障虚拟机的安全性,即不能因为物理机的故障就停止虚拟机.这 ...
- django(django项目创建,数据库迁移)
Django项目的创建与介绍 安装:pip3 install django==1.11 查看版本号:django-admin --version 新建项目: 1.切到目标目录 2.django-adm ...
- python虚拟环境virtualenv创建与迁移
1.安装virtualenv pip install virtualenv #(python2) pip3 install virtualenv #(python3) 2.创建venv virtual ...
- laravel中使用mgirations创建和迁移数据库
使用php artisan make:migration create_links_table命令 编辑2016_04_11_095342_create_links_table public func ...
- 如何使用 Migration创建一个迁移
切换到YII所在的目录 yii migrate/create test
- EF 中 Code First 的数据迁移以及创建视图
写在前面: EF 中 Code First 的数据迁移网上有很多资料,我这份并没什么特别.Code First 创建视图网上也有很多资料,但好像很麻烦,而且亲测好像是无效的方法(可能是我太笨,没搞成功 ...
随机推荐
- Jquery attr()方法 属性赋值和属性获取
jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式. 1. attr(属性名 ...
- 摄像头(2)调用系统拍照activity来录像
import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager ...
- 【HDOJ】3553 Just a String
后缀数组加二分可解. /* 3553 */ #include <iostream> #include <sstream> #include <string> #in ...
- Java面试题-并发工具
1. 如何实现一个流控程序,用于控制请求的调用次数?
- Web打印控件smsx.cab使用说明
在项目开发中,经常会用到页面打印的功能,在ASP.NET环境下推荐一款web打印控件smsx.cab. 使用方法:一般会先定义一个用于打印的母版页(Print.Master),在母版页上做好布局 ...
- [POJ 1674] Sorting by Swapping
Sorting by Swapping Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 9514 Accepted: 50 ...
- 【js】获得项目路径
var curWwwPath=window.document.location.href; //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp var pathNam ...
- FAT32文件系统--For TF卡
1. TF卡空间是如何分配的? 下面以4GB TF卡为例,通过WinHex工具进行分析,其空间分配如下图所示: FAT32把目录当做文件来管理,所以没有独立的目录区,所有的文件目录项都是在数据区里面的 ...
- Android中Toast的用法简介
转自:http://www.cnblogs.com/GnagWang/archive/2010/11/26/1888762.html Toast是Android中用来显示显示信息的一种机制,和Dial ...
- win7(64位)+IE8+QC9.0
环境win7(64位)+IE8+QC9.0出现的问题IE8访问QC9.0有时访问登录显示正常,但是有时访问QC页面无法显示正常,然后在ie8中安全中设置“启用内存保护帮助减少联机攻击*”也无法找到该项 ...