by Guest » 30 Dec 2024, 18:53
Ich verwende ASP.NET Core MVC.
Javascript:
Code: Select all
var currentSelection = [];
function selection_changed(selectedItems) {
var dataGrid = $("#myContainer").dxDataGrid("instance");
var data = selectedItems.selectedRowsData;
if (data.length > 0) {
currentSelection = data
.map((value) => `${value.Name}`)
} else {
currentSelection = [];
};
}
function create(e) {
$.ajax({
url: "@Url.Action("Register", "MyController")",
contentType: "application/json; charset=utf-8",
dataType: 'json',
type: 'POST',
data: JSON.stringify(currentSelection),
success: function (response) {
showToast("success");
},
error: function (xhr, status, error) {
showToast("error");
}
});
}
Unverarbeitete Anfrage sieht so aus:
C#
Code: Select all
[HttpPost]
public virtual ActionResult Register(object currentSelection)
Ich habe es ohne JSON.stringify versucht, Einstellung
Code: Select all
data: {currentSelection: JSON.stringify(currentSelection)}
habe versucht, Folgendes hinzuzufügen: traditionell: true.
Ich habe auch versucht, [FromBody] zum Controller hinzuzufügen, anstatt Objekt hat List oder string[] ausprobiert.
Nichts funktioniert. Ich erhalte jedes Mal den HTTP 400-Fehler. Wenn ich den Code in eine GET-Anfrage ohne Daten usw. geändert habe, funktioniert alles, also keine URL-/Kommunikationsprobleme.
Kann mir jemand dabei helfen?
Ich verwende ASP.NET Core MVC.
Javascript:
[code]var currentSelection = [];
function selection_changed(selectedItems) {
var dataGrid = $("#myContainer").dxDataGrid("instance");
var data = selectedItems.selectedRowsData;
if (data.length > 0) {
currentSelection = data
.map((value) => `${value.Name}`)
} else {
currentSelection = [];
};
}
function create(e) {
$.ajax({
url: "@Url.Action("Register", "MyController")",
contentType: "application/json; charset=utf-8",
dataType: 'json',
type: 'POST',
data: JSON.stringify(currentSelection),
success: function (response) {
showToast("success");
},
error: function (xhr, status, error) {
showToast("error");
}
});
}
[/code]
Unverarbeitete Anfrage sieht so aus:
[code]["Name1","Name2"]
[/code]
C#
[code][HttpPost]
public virtual ActionResult Register(object currentSelection)
[/code]
Ich habe es ohne JSON.stringify versucht, Einstellung
[code]data: {currentSelection: JSON.stringify(currentSelection)}
[/code]
habe versucht, Folgendes hinzuzufügen: traditionell: true.
Ich habe auch versucht, [FromBody] zum Controller hinzuzufügen, anstatt Objekt hat List oder string[] ausprobiert.
[b]Nichts[/b] funktioniert. Ich erhalte jedes Mal den HTTP 400-Fehler. Wenn ich den Code in eine GET-Anfrage ohne Daten usw. geändert habe, funktioniert alles, also keine URL-/Kommunikationsprobleme.
Kann mir jemand dabei helfen?