我正在尝试将数据保存到我的数据库中。我想要的是,当按下按钮时,数据将永久保存到数据库中。我已经完成了在应用程序运行时保存代码的测试。保存的数据是可见的。但是当我终止应用程序时,当我在visual studio中查看该表的数据时,数据不存在。我提供了用于测试的代码。
private void btn_otrFun_Click(object sender, EventArgs e)
{
tblCheese cheese = new tblCheese();
string cheesename = "TestCheese";
cheese.CheeseName = cheesename;
cheese.CheeseGroup = 1;
cheeseEntity.tblCheese.AddObject(cheese);
cheeseEntity.SaveChanges();
}
这是我获取上下文表单的地方。它在表单的开头实例化。
private CheeseWorld_DatabaseEntities cheeseEntity = new CheeseWorld_DatabaseEntities(); //instanciate new database entities
此外,我正在使用此代码段从数据库中检索数据以动态创建按钮。
var cheeselist = cheeseEntity.ExecuteStoreQuery<tblCheese>("Select * FROM tblCheese WHERE cheeseGroup = 1", null).ToList();
希望这些进一步的细节有所帮助。如果需要更多,请告诉我。
答案 0 :(得分:1)
你已经偏离了我们通常使用的正常模式...也许试着把它放回到这样的东西......(我不知道你在哪里得到上下文)
using (var context = new cheeseEntity()) {
tblCheese cheese = new tblCheese();
cheese.CheeseName = "TestCheese";
cheese.CheeseGroup = 1;
context.tblCheese.Add(cheese);
context.SaveChanges();
}
文档中介绍了这一点:http://msdn.microsoft.com/en-us/data/jj593489 (注意它显示如何跟踪生成的SQL的底部)
注意:我使用的是Add而不是AddObject。