Ich bin relativ neu zu WebAPI/AngularJS und habe ein Problem beim Übergeben eines Objekts mit $ http.get() an einen WebAPI-Controller von einem AngularJS-Controller.
AngularJS Controller-Code:
$http.get('api/Employee/GetVacancyStatus?emp='+thisData[0])
.then(function (response, success) {
if (response.data == false){
alert("cube/office occupied");
}
else // continue with employee move
{
do some stuff...
}
}, function (response, error) {
alert(response);
});
Web Api-Controller-Code:
[System.Web.Http.HttpGet, System.Web.Http.ActionName("GetVacancyStatus")]
public bool GetVacancyStatus([FromUri] employee emp)
{
//return repository.GetVacStatus(moveQuery);
return false;
}
Wenn ich den Code debuggen, wird das Objekt in dem AngularJS-Controller bestückt werden (zumindest aus der Betrachtung meines Chrome-Entwickler-Tools):
Auf der anderen Seite, wenn die Ausführung den WebAPI-Controller trifft, scheint das Objekt nicht initialisiert zu sein und ich kann nicht feststellen, was ich falsch mache.
ich habe ein $ http.put(), die wie folgt vorbei, ein Objekt zu funktionieren scheint:
$http.put('api/Employee/PutEmployee', emp)
Vielen Dank im Voraus für jede Hilfe.
Sie können Objekt nicht über URL übergeben. Sie können nur eine Zeichenfolge übergeben. – kat1330
Sie sollten wahrscheinlich die ID des Angestellten übergeben. Sind die anderen Eigenschaften notwendig, um den Leerstand zu kennen? Darüber hinaus handelt es sich um Werte, die von der Client-Seite kommen, so dass Sie nicht darauf vertrauen können, dass sie trotzdem korrekt sind. – juunas