我真的很困惑为什么没有进行更新。这很简单:
int goodID = 100;
DataContext db = new DataContext();
Schedule schedule = db.Schedules.Single(s => s.ID == goodID);
// this wont persist - WHY NOT?!
schedule.Email = txtEmail.Text;
// this does persist
schedule.NumberCourses = 5;
db.SubmitChanges();
我无法理解为什么字段Email没有从文本框中获取值。我可以检查什么?
我设置了断点并在分配后检查了值。它分配文本框值但仍然没有更新。
答案 0 :(得分:2)
检查将向datacontext提交的更改。
在执行db.SubmitChanges()
行之前添加断点并添加以下Watch:
db.GetChangeSet();
在Watch(或Quick Watch)窗口中,您将能够看到正在提交的更改。
答案 1 :(得分:1)
设置断点并检查该行之前和之后的schedule.Email值。另外,使用立即窗口检查txtEmail.Txt以查看它是否实际包含数据。
告诉我们您的发现。
答案 2 :(得分:1)
dbml是否与数据库表匹配?如果它与数据库不匹配,你可能会得到奇怪的东西。尝试重新导入它。
答案 3 :(得分:0)