如何将对象保存到LINQ to SQL的数据库中?
问题描述:
在ASP.NET MVC网站中使用LINQ to SQL我可以从我的数据库表中显示对象(记录)。如何将对象保存到LINQ to SQL的数据库中?
现在我想创建一个新对象并将其保存回数据库。
在我的控制,我这样做:
var dataContext = new MessageDataContext();
Message message = new Message();
message.Action = "save";
message.Body = "record";
message.Parameter = "234";
,现在我想的是这样保存它:
message.Save();
或许:
dataContext.SubmitChanges(message);
但无论是这些工作。
什么语法这里:
- 添加新的对象,并将它们保存到数据库?
- 对现有对象进行更改并将它们保存到数据库中?
答
什么你要找的是:
dataContext.Messages.InsertOnSubmit(message);
dataContext.SubmitChanges();
假设你有一个Messages
表映射到你的LINQ to SQL的DBML。
答
要添加新的对象只是做:
dbContext.Messages.InsertOnSubmit(message);
dbContext.SubmitChanges();
如果您对先前加载实体的任何变化只是做:
dbContext.SubmitChanges();
如果你不想提交任何更改的实体需要要做:
dbContext.Refresh(RefreshMode.OverwriteCurrentValues, message);
请问我可以帮我解决问题吗? [链接这里](http://*.com/questions/12761598/linq-to-sql-updates-datacontext-but-not-the-database) – Jed 2012-10-07 11:57:26