2012-04-02 92 views
1

按照本教程(http://www.asp.net/mvc/tutorials/getting-started-with-ef-using-mvc/handling-concurrency-with-the-entity -framework-in-an-asp-net-mvc-application),我学会了如何在数据提交之前保存数据并对数据进行并发检查。MVC3的ViewModels保存编辑后的数据和并发检查

现在,我有一个使用一个ViewModel,而不是实际的数据模型的视图。

(1)如何保存数据传回当表单发布的数据库? 我不能再调用db.SaveChanges();因为数据的类型是ViewModel而不是Model。

(2)如何对数据执行并发检查?

我只是在寻找一个简单的例子可循。

谢谢!

回答

0

它的工作方式相同,但您必须在提交时将数据从ViewModel复制到数据模型,或者需要从视图模型构建新实体并将其附加到DbSet。

您可以使用一个工具,如AutoMapper来缓解这一进程。

+0

为了让并发检查正常工作,我是否需要对时间戳字段做任何特殊的处理? – user1304444 2012-04-02 17:48:07

+0

@ user1304444 - 除了不依赖MVC构建实体之外,您可以执行之前的任何操作。您必须从您的视图模型返回的数据中自行完成。 – 2012-04-02 17:51:57

+0

好的。感谢您回答这个简单的问题。我认为这会让我走。 – user1304444 2012-04-02 18:00:27

相关问题