如何防止网络论坛的脏写?

时间:2009-11-03 07:45:58

标签: asp.net-mvc entity-framework dirty-data

作为网络开发的学徒,我不知道防止网络论坛的脏写。有什么值得思考的东西吗?提前谢谢!

我正在研究ASP.NET MVC和实体框架。

好的,抱歉误导。这里的脏写意味着覆盖数据库中另一个人的更改。使用乐观并发时。

1 个答案:

答案 0 :(得分:2)

要在EF中执行乐观并发,您:

  1. 添加或选择用于乐观并发控制的字段。我们使用TIMESTAMP。
  2. 在EF设计器中,将此属性的ConcurrencyMode更改为Fixed。
  3. 将字段的“旧”值序列化为表单上的隐藏字段。
  4. 在提交表单时反序列化“旧”值,并将其添加到您要更新的实体。
  5. 当更新期间存储的值与旧值不匹配时,EF将抛出OptimisticConcurrencyException。