我有一些代码可以向数据库添加新记录,但是它似乎不会更新数据库。
private void btnNew_Click(object sender, EventArgs e)
{
DBEntities db = new DBEntities();
Animal a = new Animal();
a.AnimalName = txtNew.Text;
db.SaveChanges();
Debug.WriteLine(a.AnimalName);
}
值得一提的是,我还将我的数据库的一个属性设置为'copy if newer'并且没有解决问题。我在创建模型时自动生成的连接字符串如下:
<add name="DBEntities" connectionString="metadata=res://*/AnimalModel.csdl|res://*/AnimalModel.ssdl|res://*/AnimalModel.msl;provider=System.Data.SqlClient;provider connection string="data source=(LocalDB)\MSSQLLocalDB;attachdbfilename=|DataDirectory|\dbAnimal.mdf;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework"" providerName="System.Data.EntityClient"/>
如果有人知道解决方案,那将非常感激。谢谢。
答案 0 :(得分:0)
您必须在db.animals.add(a);
db.SaveChanges();
这句话
答案 1 :(得分:0)
这是因为您正在创建Animal模型的实例,但是您没有在db上下文中添加它应该是这样的
db.Model.Add(new model)
在你的情况下它将是
DBEntities db = new DBEntities();
Animal a = new Animal();
a.AnimalName = txtNew.Text;
db.Animal.Add(a);
db.SaveChanges();
Debug.WriteLine(a.AnimalName);