asp.net 如何防止多人同时操作一个功能。

比如 有a b c d e五个人 同时登陆后台。同时打开了一个页面。假如这个页面执行3个步骤就完成。 现在a 对页面进行了操作。并且已经完成了这三个步骤。。其他几个人都还没有操作页面。他们不知道 a已经修改了这个页面。 现在c用户 去吧功能操作成了第二步。。  本来 a 已经把页面操作到了第三步了。现在又变成了第二步。。这样这样的话 就会造成操作上面的冲突。。请问各位有没有什么好的建议 。。

眼眸繁星
浏览 739回答 2
2回答

翻翻过去那场雪

这是明显的多线程并发问题,解决要用到锁的问题。先在该页面定义一个全部的静态变量如:private static object m_opp=new object();然后再要执行步骤的代码块外面加:Monitor.Enter(m_opp);步骤一步骤二步骤三Monitor.Exit(m_opp);这样就能防止多用户同时操控了,希望对你有帮助。

达令说

数据库表里设置一个最后更新时间字段,每次操作提交之前,判断一下 最后修改时间是否相同,如果不相同就提示已经修改,重新获取数据在修改。
打开App,查看更多内容
随时随地看视频慕课网APP