定义初始化数据库方法:

 

using BlogASPNET5.Entity.Accounts;
using BlogASPNET5.Repository.Contexts;
using System.Linq;
namespace BlogASPNET5.Repository.Migrations
{
public static class SampleData
{
static EFContext db = new EFContext();
public static void SetData()
{
db.Database.EnsureDeleted();
db.Database.EnsureCreated();
db.Add(
new Role { Name = "manage", Description = "管理员" },
new Role { Name = "member", Description = "会员" });
db.SaveChanges();
//CoreCLR没随机函数,循环啦
for (int i = 1; i <= 1000; i++)
{
db.Add(
new User
{
Name = "admin" + i,
Password = "abc" + i,
Gender = Gender.man,
Role = db.Roles.Single(r => r.Name == "manage")
});
db.SaveChanges();
}
for (int i = 1; i <= 1000; i++)
{
db.Add(
new User
{
Name = "member" + i,
Password = "efg" + i,
Gender = Gender.woman,
Role = db.Roles.Single(r => r.Name == "member")
});
db.SaveChanges();
}
}
}
}

  1.3调用
  在控制台程序调用:

 

using BlogASPNET5.Repository.Contexts;
using BlogASPNET5.Repository.Migrations;
using System;
namespace BlogASPNET5.ConsoleApp
{
public class Program
{
public void Main(string[] args)
{
//初始化数据,创建完了注释掉
SampleData.SetData();
Console.WriteLine("set data OK!");
Console.ReadLine();
using (var db = new EFContext())
{
var lists = db.Users;
foreach (var item in lists)
{
Console.WriteLine(item.Name);
}
}
Console.ReadLine();
}
}
}

  结果不截图了。 EF7 beta2又一个改进:创建出来的表,不再有MigrationHistory(看着不爽)这个表了。
  2.小结
  本篇先初始化数据库,下一章数据操作封装及查询分页。