我需要有关更新实体框架模型的帮助。我想在实体中找到某些字段,并使用文本框的值更新其值。
我尝试了这个:
var context1= new Entities1();
using (context1)
{
var chechUser = (from c in context1.Users
where c.Username == LabelUsername.Text
select c.Name).Single();
chechUser = TextBoxNewName.Text;
context1.SaveChangesAsync();
}
没有构建错误,但是它不起作用(实体未更新)。
有人可以告诉我我在做什么错吗?
预先感谢。
最佳答案
我的猜测是EF不知道如何保存此更新。
您的“ var”只是返回一个字符串,而不是数据库记录,因此,当您更改它的值时,它不再链接到db记录。
这是您的代码应如下所示:
var context1= new Entities1();
using (context1)
{
var chechUser = (from c in context1.Users
where c.Username == LabelUsername.Text
select c).FirstOrDefault();
if (chechUser == null)
throw new Exception("Couldn't find a Users record with a Username value of: " + LabelUsername.Text);
chechUser.Name = TextBoxNewName.Text;
context1.SaveChangesAsync();
}
希望这可以帮助。
关于c# - 使用textbox.text值更新 Entity Framework ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30978168/