我正在使用visual studio 2012在我的webapi项目中首先尝试实体框架(6.02)代码。
以下是简单的模型,数据库上下文和我的定制初始化器来播种数据。现在,当我按下f5并运行我的代码时,它没有按种子方法调试器,并且没有数据库正在为我创建我使用种子方法提供的命令。
namespace silverstar.wapi.Models
{
public class Order
{
public int OrderId { get; set; }
public string Title { get; set; }
public int TotalItems { get; set; }
public int ProcessedItems { get; set; }
public int InProgress { get; set; }
public decimal Percentage { get; set; }
public string Description { get; set; }
}
public class SilverStarContext : DbContext
{
public DbSet<Order> Orders { get; set; }
}
public class SilverStarInitalizer : DropCreateDatabaseIfModelChanges<SilverStarContext>
{
protected override void Seed(SilverStarContext context)
{
var orders = new List<Order> {
new Order { OrderId=1, TotalItems=200, InProgress=100, ProcessedItems =100, Percentage=50, Title="fifa 2014"},
new Order { OrderId=2, TotalItems=400, InProgress=200, ProcessedItems =200, Percentage=50, Title="green soccer 2014"}
};
orders.ForEach(o => context.Orders.Add(o));
context.SaveChanges();
// base.Seed(context);
}
}
}
在我的global.asax.cs文件中,我有以下代码
protected void Application_Start()
{
Database.SetInitializer <SilverStarContext>(new SilverStarInitalizer());
}
答案 0 :(得分:0)
您必须实例化DbContext并尝试在构建模型之前使用它