.net – 使用Model First方法时如何种子数据?
|
所以我正在学习MVC3和EF4。
但是我已经和模特儿一起去了。这样我可以直观地设计它,看看关系在哪里。 在创建模型之后,它会为我创建一个针对我的SQL,这对我的SQL Express数据库执行。完成并完成 现在我想要我的表中的数据。当然,我可以把它们添加到使用服务器浏览器中,但很可能我会在我的模型中进行更改。并不断更新数据库。所以我不能手动输入数据。我知道如果您使用代码,您可以导出DropCreateDatabaseIfModelChanges并覆盖种子方法。 但是,如何使用模型第一种方法来做到这一点? public class DatabaseInitializer : IDatabaseInitializer<BettingContext> {
public void InitializeDatabase(BettingContext context) {
var teams = new List<Team> {
new Team { Name="Toronto Maple Leafs",League="NHL"},new Team { Name="Boston Bruins",new Team { Name="Vancouver Canucks",new Team { Name="Nashville Predators",new Team { Name="Montreal Canadiens",};
}
}
当然和在我的全球文件: protected void Application_Start()
{
Database.SetInitializer<BettingContext>(new DatabaseInitializer());
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
那么现在怎么办?如何告诉它运行方法?我究竟做错了什么? 解决方法你可以有这样的东西:public class MySeedData : DropCreateDatabaseIfModelChanges<YourDataBaseContextClass>
{
protected override void Seed(YourDataBaseContextClass context)
{
// Create objects here and add them to your context DBSets...
}
}
public class YourDataBaseContextClass : DbContext
{
}
然后,在Application_Start()中调用: Database.SetInitializer(new MySeedData()); 在您的情况下,您可以尝试手动创建DbSets(使用您的模型的第一类),并尝试使用上面的代码将其插入。它是一个模型第一代码的混合。 public class FourthCoffeeWebContext : DbContext
{
public DbSet<Category> Categories { get; set; }
public DbSet<Product> Products { get; set; }
}
添加到:CreateDatabaseIfNotExists<(Of <(<‘TContext>)>)> (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 通过删除空格打破我的calc语句的MVC捆绑?
- environment-variables – 如何在生产环境中设置ASP.NET 5环
- asp.net-mvc – T4MVC @ Url.Action(MVC.Controller.Action
- asp.net-web-api – 从响应中删除标题
- asp.net-mvc – Visual Studio 2010是否支持MVC 5?
- ASP .NET C#从Web路径中的文件中获取所有文本
- 将ASP.NET updatepanel与jQuery UI DatePicker结合使用时出
- asp.net-mvc – 用于Kendo网格模板中的循环
- asp.net单选按钮分组
- asp.net核心 – 是否可以自主托管没有IIS(不是Web API)的AS
- ASP.NET ViewState的工作原理
- asp.net – 如何使用带有TemplateFields的Object
- 在ASP.NET中清除FileUpload内容
- 从ASP.NET MVC返回null时,jQuery post JSON失败
- asp.net – 为什么IIS线程这么珍贵与常规CLR线程
- 如何在使用ASP.NET MVC的jQuery AJAX调用中触发“
- ASP.NET Forms身份验证和持久身份验证Cookie安全
- asp.net – 在同一个域上的两个网站之间共享cook
- 远程服务器返回错误:(401)未经授权.在ASP.NET中
- ASP.NET MVC:如何在MVC应用程序中使用静态HTML页
