处理多用户环境

Use*_*ser 6 .net c# nhibernate multi-user

这是我第一次开发一个应用程序,将由10-15人使用,因为我不确定最小化更新冲突的好方法.

基本上,我的应用程序如下工作.新项目在收到后通过外部服务插入数据库.业务规则表明每个项目将由两名独立员工进行审核.不用说,项目和评论之间存在一对多的关系.什么是应用的一个重要方面是,没有项目可以超过2条评论中,系统必须跟踪谁是两个审稿人.此外,谁是第一个评论员,第二个.

现在,我有一切工作.我正在处理的问题是这个(许多类似场景之一).如果所有用户在相同的5分钟内刷新他们的项目列表会发生什么.用户1提交项目ID 1的评论.第二个人对同一项目提交评论.现在,第三人提交了对项目ID 1的评论,但已经有2条评论,因此该项目已被标记为已完成.

处理多用户环境的可能方法是什么,多个用户可能更新同一记录?

bry*_*mac 7

我不知道您的应用程序的详细信息,但似乎进行审核的过程扩大了多个人可以开始审核的窗口,然后当他们提交时最终会超过两个,

一种选择是引入开始审查的概念.当有人启动审核操作时,他们会"开始"审核.这标志着审查开始了.系统不应该让两个以上的开始.

你也可以让它更受超时条评论我们从来没有"提交"或不必删除待审核已启动的能力先进.


Ash*_*ohn 5

Nhibernate有各种各样的concurreny模型,您可以根据自己的需要在项目中实现这些模型.

看看NHibernate-Concurrency