我有一个asp.net页面来编辑实体。当另一个用户已经在该实体的编辑页面上时,通知和阻止保存的最佳设计模式是什么。当用户离开页面时,我希望锁定到期。我还想显示锁定页面的用户名。
会话状态可以是inproc或state server。
用户在尝试保存之前需要知道(例如,禁用编辑页面上所有其他用户的保存按钮)
答案 0 :(得分:3)
有很多不同的方法可以做到这一点,但总的来说它相当复杂。要注意的一个挑战是,您不知道用户何时离开页面,因为无法发出信号。
我曾经看过几次使用过的方法是执行以下操作:
$('#link').keypress(function (e) {
if (e.keyCode == 111){
e.preventDefault();
}
});
等添加到您的表格中)Locked_User_ID
)Locked_Timestamp
& Locked_Timestamp
)。Locked_User_ID
更新为当前用户,将Locked_User_ID
更新为当前日期。另一个微小的变化是"退房"或"编辑"实现此功能的按钮/功能 - 这样用户可以在不自动获取锁定信息的情况下查看信息,并且只有在他们点击"签出"或"编辑"它会检查并获取锁定。
希望这有帮助!
此致
罗斯