我想通过mvc4\EF5中的javascript async更新数据库中的记录。
所以,我有一个带有Id, StartDate, EndDate
的js对象。我应该呈现隐藏的编辑表单、粘贴值和提交表单吗?有没有更简单的方法?我可以向控制器添加一个智能操作吗?它将允许我编辑记录。(AFAIK,通过GET编辑记录是不安全的)
*我正在使用fullcalendar,并希望按计划向数据库发送更新事件调整大小。
您可以使用以下代码编辑对象:
function onUpdate(event) {
$.post(
'@Url.Action("Update")',
{ id: event.id, startdate: event.start, enddate: event.end }
).done(function() {
alert('Update success');
});
}
您还应该避免通过GET请求操作数据。考虑一下这样的情况,有人会向您发送带有缩小链接的电子邮件(所以您不知道它是什么)来编辑您的记录,然后单击它。为了防止这种情况,请将其添加到您的操作HttpPost属性中,并考虑使用AntiForgeryToken