我通过邮件向用户提供链接。当他们点击链接页面打开并点击提交按钮时,控制器发布方法运行。
saveRecords()
{
-- business logic
-- code validation for checking duplicates
-- saving records
}
一切都运行良好。但是突然发现正在输入重复的记录。Code逻辑没有问题。
跟踪后发现浏览器是Mozilla时会发生这种情况。场景是用户单击邮件链接两次,因此会打开 2 个选项卡,如果他点击每个选项卡上的提交按钮,则会插入重复项。
注意 - 如果我们点击提交的同一页面正确验证。当打开 2 个选项卡并在两个选项卡中单击提交按钮且浏览器为 Firefox 时,会出现问题。
你能给我建议一个解决方案吗?
这是代码的摘要:-
var obj = ctx.tblDuty.FirstOrDefault(m => m.Id == recordId);
if (obj.EntryStatus == Status.Approved)
msg = "Duty already Approved.!";
else if (obj.EntryStatus == Status.Rejected)
msg = "Duty already Rejected.!";
var data = service.saveDuty(model, userRole);
MMMHUHU
相关分类