Wie return-Fehler von webmethod?
Wie macht man einen Fehler zurückgeben, in einer aspx-Seite-Methode verziert mit WebMethod
?
Beispielcode
$.ajax({
type: "POST",
url: "./Default.aspx/GetData",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: AjaxSucceeded,
error: AjaxFailed
});
[WebMethod]
public static string GetData()
{
}
Wie funktioniert ein return-Fehler von einer webmethod? So kann man in der Lage sein zu verwenden die jquery-Fehler, Teil zu zeigen, den Fehler detail.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß nicht, ob es eine mehr
WebMethod
-spezifischen Art und Weise, es zu tun, aber in ASP.NET Sie würden in der Regel nur den status-code für Ihre Response-Objekt. So etwas wie dieses:Verwendung von standard-Fehler-codes ist der geeignete Weg, um Benachrichtigen eines Konsum-HTTP-client ein Fehler aufgetreten ist. Vor Beendigung der Reaktion können Sie auch
Response.Write()
alle Nachrichten, die Sie senden möchten. Die Formate für diese sind viel weniger standardisiert, so können Sie Ihre eigenen erstellen. Aber solange der status code entspricht genau der Antwort, dann ist dein JavaScript oder andere client-service in Anspruch nehmen, dass verstehen der Fehler.Response
Objekt her? Der Benutzer ist webmethod ist wieder ein string.HttpContext.Current
im web Methoden, wie es sonst ist an anderer Stelle in ASP.NET?WebMethod
s kann nicht interagieren, direkt und es wäre gut zu erwähnen, dass.Nur die Ausnahmen in Ihrem PageMethod und fangen es in AjaxFailed. Sowas:
customErrors
- element in der web.config, diese nur als Allgemeine Fehler (à la "Internal Server Error"), Sieg über den Zweck der übersendung eine sinnvolle Meldung an den client, und fangen es in der error-Funktion.Wird ein Fehler angegeben, die durch die http-status-code (4xx - Benutzer-Anforderung-Fehler, 5xx interner server - Fehler) der Ergebnis-Seite. Ich weiß nicht, asp.net aber ich vermute, Sie haben eine exception werfen, oder so ähnlich.