C# ASP.NET MVC EF和MySQL
我将遵循以下教程: 一切都按预期进行 但是现在我想将我的模型添加到应用程序中,但是我在连接以创建数据库时遇到了问题 这里有一个型号Note.cs:C# ASP.NET MVC EF和MySQL,c#,mysql,asp.net,asp.net-mvc,entity-framework,C#,Mysql,Asp.net,Asp.net Mvc,Entity Framework,我将遵循以下教程: 一切都按预期进行 但是现在我想将我的模型添加到应用程序中,但是我在连接以创建数据库时遇到了问题 这里有一个型号Note.cs: public class Note { public int Id { get; set; } public string Text { get; set; } public int Done { get; set; } } 这里是DataContext.cs public class
public class Note
{
public int Id { get; set; }
public string Text { get; set; }
public int Done { get; set; }
}
这里是DataContext.cs
public class DataContext : DbContext
{
public DataContext()
: base("DefaultConnection")
{
}
public DbSet<Note> Note { get; set; }
static DataContext()
{
Database.SetInitializer<DataContext>(
new DropCreateDatabaseAlways<DataContext>());
}
}
当我登录时,一切都很完美,它为用户创建了数据库。
但是当我转到这个控制器时,我在db.Note.Add(Note)上得到了这个错误代码>:
如何让代码根据模型创建数据库?第一步是注释掉不支持的DBInitializer。我已经用你的代码做了一个测试,它是有效的。您可以从中获得工作示例。我已经手动创建了便笺表。您是否可以删除DropCreateDatabaseAlways()并尝试A并添加新的DropCreateDatabaseIfModelChanges(),稍后更新数据库是的,我以前尝试过,错误完全相同
private DataContext db = new DataContext();
public ActionResult Index()
{
var note = new Note { Id = 1, Text = "this is the text", Done = 0 };
db.Note.Add(note);
db.SaveChanges();
ViewBag.Notes = db.Note.ToList();
return View();
}
An exception of type 'System.NotSupportedException' occurred in EntityFramework.dll but was not handled in user code
Additional information: Model compatibility cannot be checked because the database does not contain model metadata. Model compatibility can only be checked for databases created using Code First or Code First Migrations.