Jquery MVC 5内联编辑存储更新、插入或删除语句影响了意外的行数
我一直在mvc应用程序中进行内联编辑,但每当我尝试更新一些数据库条目时,就会出现此错误(在标题中提到)。以下是我索引视图中的javascript代码:Jquery MVC 5内联编辑存储更新、插入或删除语句影响了意外的行数,jquery,asp.net-mvc,entity-framework,Jquery,Asp.net Mvc,Entity Framework,我一直在mvc应用程序中进行内联编辑,但每当我尝试更新一些数据库条目时,就会出现此错误(在标题中提到)。以下是我索引视图中的javascript代码: function SaveChanges() { var recs = []; var id = $('#lblID').text(); var type = $('#lblType').text(); var year = $('#txtYear').val();
function SaveChanges()
{
var recs = [];
var id = $('#lblID').text();
var type = $('#lblType').text();
var year = $('#txtYear').val();
var bal = $('#txtBal').val();
var rate = $('#txtRate').val();
var bank = $('#drpBanks').val();
var month = $('#1').text();
var total = $('#txtTotal').text();
var bitEdit = "1";
var recs = {
ID: id,
nTypeId: type,
nBudgetYear: year,
nBegBalance: bal,
nRate: rate,
sBankName: bank,
nPerMonth: month,
nTotal: total,
bEdit: bitEdit
}
$.ajax({
url: "@Url.Action("Edit")",
type: "POST",
data: JSON.stringify(recs),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
// alert(response.responseText);
alert("Pasok sa success!");
},
error: function (response) {
alert(response.responseText);
// alert("Pasok sa error!");
}
});
}
这是我在控制器中的编辑
[HttpPost]
public ActionResult Edit([Bind(Include = "sBankName, nType, nRate, nBegBal, nMonth, nTotal, nYear, dDateEntry, bEdited")]InputInterestIncome interest)
{
try
{
if (ModelState.IsValid)
{
db.Entry(interest).State = EntityState.Modified;
db.SaveChanges();
TempData["Msg"] = "Data has been updated successfully";
return RedirectToAction("Index");
}
return View(interest);
}
catch (System.Data.Entity.Validation.DbEntityValidationException ex)
{
Exception raise = ex;
foreach (var validationErrors in ex.EntityValidationErrors)
{
foreach (var validationError in validationErrors.ValidationErrors)
{
string message = string.Format("{0}:{1}",
validationErrors.Entry.Entity.ToString(),
validationError.ErrorMessage);
// raise a new exception nesting
raise = new InvalidOperationException(message, raise);
}
}
throw raise;
}
}
我做错了什么?对我来说,这个链接很有效。。希望这对你也有帮助 我想我得到了这个错误,因为ID没有从我的Javascript传递到我的控制器。问题解决了