Я пытаюсь сохранить некоторые данные в своей базе данных, используя Ajax-вызов, как я делал сотни раз:
function saveNewGraphic() {
var svgString = drawObject.node().outerHTML;
if (logLevel >= 10) {
console.log("svgEditor - saveNewGraphic");
console.log("SVG-Grafik: " + svgString);
}
$.ajax({
type: "POST",
url: appBaseUrl + 'Symbols/SaveNewGraphic',
data: {
svgString: svgString,
pageId: pageId
},
error: function () {
alert("Fehler beim Speichern der neuen Grafik auf Seite (ID) " + pageId);
},
success: function (result) {
if (logLevel >= 10) console.log("Grafik mit ID: " + result.data.ID + " gespeichert");
// svg.attr("id", result.data.ID);
},
async: false
});
}
svgString в порядке, и pageId также.Я попробовал то же самое без ошибок, успеха и асинхронности, но это даже не затронуло действие контроллера.Только сообщение:
HTTP500: SERVERFEHLER: Es ist ein unerwarteter Zustand aufgetreten, sodass der Server die Anforderung nicht erfüllen kann.
(XHR)POST - http://localhost:52771/Symbols/SaveNewGraphic
Это действие, которое должно быть выполнено:
[HttpPost]
[Authorize(Roles = RoleName.AdminOrEngineerOrSales)]
public ActionResult SaveNewGraphic(string svgString, int pageId)
{
string message="ID fehlerhaft";
//if (pageId == 0) message = "Neue Grafik wurde nicht gespeichert, Page-ID nicht lesbar" ;
int id = 1;// SymbolDataProvider.SaveNewProjectGraphic(svgString, pageId, User.Identity.Name);
//if(id >= 0) message = "Grafik erfolgreich gespeichert";
var data = new { ID = id, Message = message };
return Json(new { data, JsonRequestBehavior.AllowGet });
}
Странно, что это действие будет выполнено (конечно, если я изменю URL).
[HttpPost]
[Authorize(Roles = RoleName.AdminOrEngineerOrSales)]
public ActionResult SaveNewPosition(string positionData, int pageId, int id = 0, int symbolId = 0)
{
string message;
if (id == 0)
message = "Position nicht gespeichert, Id nicht lesbar";
else if (SymbolDataProvider.SaveSymbolPosition(id, positionData, symbolId, pageId, User.Identity.Name))
message = "Position gespeichert.";
else
message = "Position nicht gespeichert, Probleme beim Datenbankaufruf!";
return Json(new { Message = message, JsonRequestBehavior.AllowGet });
}
Но я не мог видеть разницу между ними.