我在设计应用程序时需要一些建议,在我的应用程序中会有保险案例,根据角色,用户将访问案例和Case的不同生命周期级别。我需要限制用户访问相同的案例。如果一个用户正在使用caseid(123)访问一个案例,而其他用户不能访问同一个案例(123)。请有人建议我如何实现这一目标。
答案 0 :(得分:0)
你需要某种锁定。根据您的具体要求,有不同的方法来实现这一目标。
对于Web应用程序,只要用户保留在编辑页面上,您就可以使用this algorithm使用表来存储锁和ajax来刷新锁。即使您不在客户端上使用PHP,也可以使用该算法。
答案 1 :(得分:0)
以下是执行此操作的一种方法
重要的是要注意#2中提到的事务,即数据库读取和更新应该是ATOMIC。
答案 2 :(得分:0)
您计划实施锁定的方式不是一个好习惯。我不确定我的sql,但如果你使用的是microsoft sql或oracle,那么最好的做法是实现乐观的锁机制。 下面给出的链接可以帮助您更好地理解。
www.asp.net/mvc/overview/getting-started/getting-started-with-ef-using-mvc/handling-concurrency-with-the-entity-framework-in-an-asp-net-mvc -application