使用LINQ2SQL和MVC进行向导类型保存功能

时间:2009-08-11 12:36:44

标签: asp.net-mvc linq-to-sql

我有一个使用LINQ2SQL作为数据库层的ASP.NET MVC应用程序。我可以将数据保存回数据库没有问题,但是在尝试使用向导类型的方案进行保存时遇到了一些问题,其中数据是通过几种不同的表单收集的,但是直到最后一个表单“保存”才保存到数据库中“点击按钮。

首先,我尝试使用InsertOnSubmit()或DeleteOnSubmit()在datacontext中添加新对象,并在最后一页上使用SubmitChanges()提交数据库。这个问题是,如果我尝试删除尚未提交的对象DeleteOnSubmit(),我会收到错误。

我最终通过编写大量代码来管理每个对象的状态(插入,更新或删除),然后在最终提交时,我在保存之前对DataContext进行了所有更改。

我想知道是否有更好的方法来管理使用LINQ2SQL跨页面的对象状态,或者手动代码是最好的方式吗?

1 个答案:

答案 0 :(得分:0)

如果使用TempData [“key”] = data;你可以在重定向之间传递数据。

它使用会话状态但可以使用您自己的实现ITempDataProvider的提供程序覆盖(可能默认情况下会帮助您!)

我通过向导构建对象,然后在向导的最后一页中执行一个SubmitChanges()。

善良& HTH,