C# 实体框架6+;MySQL:模型表不是自动创建的
我尝试使用EF6和MySQL。我确信我与数据库的连接正在工作,因为存在首选数据库架构。但是,只有_迁移表存在 我有以下代码 我的模型C# 实体框架6+;MySQL:模型表不是自动创建的,c#,mysql,sql,entity-framework,asp.net-mvc-4,C#,Mysql,Sql,Entity Framework,Asp.net Mvc 4,我尝试使用EF6和MySQL。我确信我与数据库的连接正在工作,因为存在首选数据库架构。但是,只有_迁移表存在 我有以下代码 我的模型 [Table("my_model")] public class ModelA { [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public int ModelAId { get; set; } public string ModelAProperty {
[Table("my_model")]
public class ModelA
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int ModelAId { get; set; }
public string ModelAProperty { get; set; }
}
我的数据库上下文
public class ModelAContext : DbContext
{
public ModelAContext() : base("DefaultConnection")
{
}
static ModelAContext()
{
Database.SetInitializer( new DropCreateDatabaseIfModelChanges<ModelAContext>());
}
public DbSet<ModelA> MyModels { get; set; }
}
未创建ModelA的对应表。
我总是得到一个MySQL异常,其中表(在本例中为app.my_模型)不存在
任何帮助都将不胜感激
另外,如果你有任何好的教程,我可以在ASP.NETMVC4中设置我的MySQL和EF6,那就太好了。到目前为止,我似乎无法在您的Global.ascx广告中使用MVC4的WebSecurity助手。
AppDbContext db = new AppDbContext();
db.Database.Initialize(true);
关于一起设置EF6和MySQL,这里是我几个月前做的一些研究的笔记,希望能有所帮助-@francisco.preller,谢谢你的回复。我实际上已经从那个链接上读到了你的答案。我已经让MySQL和EF6工作了,但是模型的表不是自动创建的。似乎context.Database.CreateIfNotExists()只创建数据库/模式,而不创建表。根据我的研究,他们说我需要创建一个对DbSet的查询来初始化表,但是,同样,我总是在表不存在的地方得到错误。这些行在这个Global.ascx上下文中到底做了什么?迁移是否仍然适用于这种方法?
AppDbContext db = new AppDbContext();
db.Database.Initialize(true);