我有一个在ASP.NET中设计的应用程序,它正在使用asmx Web服务。我没有使用任何回发,但通过jquery调用页面方法。在后面的代码我调用Web服务。请参阅下面的示例调用:
$.ajax({
type: 'POST',
contentType: "application/json; charset=utf-8",
dataType: 'json',
data: JSON.stringify({ 'loginId': loginId, 'password': pass}),
url: 'Default.aspx/VerifyLogin',
success: function (d) {
debugger;
if (d.d == 'OK') {
window.location = "Home.aspx?uq=" + d.d;
}
else {
alert("Username/Password missing or wrong");
}
},
error: function (err) {
debugger;
alert(error);
}
});
当访问该应用程序的用户数量较少时,一切正常。
我的用户正在根据其他一些数据将一些数据插入数据库。当多个用户访问该应用程序时,存在数据不匹配的问题。假设“X”正在更新数据,表示“A”,另一个用户“Y”更新数据表示“B”,则数据“A”的创建或更新将更改为“Y”。
当多个用户同时更新数据时,我应该在代码中进行哪些更改以防止出现此类问题。
答案 0 :(得分:0)
您必须使用时间戳来更新数据或乐观并发 请参阅以下链接
https://www.codeproject.com/Articles/4811/ASP-NET-Optimistic-Concurrency-Control