Die Web-API erkennt Abfragezeichenfolgen, jedoch nicht den Text
Wenn ich Benutzer als Abfragezeichenfolge übergebe (unter Verwendung von Parametern in $ http) und die Web-API-Methode so einstelle, dass sie im URI gesucht werden, ist alles peachy. Aber wenn ich sie wie folgt weitergebe, werden Benutzer als null angezeigt. Was vermisse ich hier?
Winkelfunktion
scope.saveChanges = function () {
// create array of user id's
var users = [];
angular.forEach(scope.usersInRole, function (v, k) {
users.push(v.Key);
});
var data = { user: users };
var token = angular.element("input[name='__RequestVerificationToken']").val();
// put changes on server
http({
url: config.root + 'api/Roles/' + scope.selectedRole + '/Users',
method: 'PUT',
data: data,
contentType: "application/json; charset=utf-8",
headers: { "X-XSRF-Token": token },
xsrfCookieName: '__RequestVerificationToken'
}).success(function (result) {
// notify user changes were saved
angular.element('#myModal').reveal({ closeOnBackgroundClick: false });
});
};
Web-API-Aktion
public HttpResponseMessage Put(HttpRequestMessage request, [FromUri]string role, [FromBody]string[] user)
{
return request.CreateResponse(HttpStatusCode.NoContent);
}