WebApi "Die angeforderte Ressource nicht unterstützt http-Methode "LÖSCHEN"

Mit WebApi angularjs-Projekt und versucht, zu löschen-Funktion als
`

     [HttpDelete]
    public String DeleteCountry(string cntryId)
    {
        if (cntryId != null)
        {
            return repoCountry.DeleteCountry(Convert.ToInt32(cntryId));

        }
        else
        {
            return "0";

        }
    }

js Funktion

  $http({
            method: "delete",
            url: '/api/Country/DeleteCountry/',
            dataType: "json",
            data: { cntryId: cntryId }
        }).then(function (response) {});

Hier bin ich immer Ausnahme

{"Message":"The requested resource does not support http method 'DELETE'."}

Einfüge -, update-und get-Funktionen korrekt arbeiten.Giv eine Lösung ist und warum es passiert bei löschen nur

  • Können Sie versuchen, entfernen Sie die "data" - Objekt, und fügen Sie die cntryId an die url? Meine Vermutung ist, dass die ASP.NET routing ist auf der Suche nach einem HttpDelete action ohne Parameter (da es nicht in der url).
  • Ist der parameter nicht markiert als [FromBody], so muss es in der URL, wenn ich mich richtig erinnere.
  • das ist richtig, standardmäßig Bindung sieht für "einfachen" Typen von der URL-query-Parameter.
  • Haben Sie versucht, meine Lösung? sollte es funktionieren
Schreibe einen Kommentar