0
Ich versuche, Daten mit Web-Methode zu speichern. Aber es zeigt einen Fehler wie Methode nicht gefunden.Ajax Web-Methode nicht gefunden
function InsertMasterCourse() {
var data = {};
data.Name = $('[id$=txtName]').val();
$.ajax({
type: 'POST',
url: '<%= ResolveUrl("~/MasterService.asmx/InsertMasterCourse") %>',
data: "{data:" + JSON.stringify(data) + "}",
contentType: "application/json; charset=utf-8",
dataType: 'json',
async: true,
success: function (response) {
$('#txtName').val('');
},
error: function (response) {
alert(response.statusText);
}
});
return false;
}
In .asmx
[WebMethod()]
[ScriptMethod()]
public static void InsertMasterCourse(Master_CourseBLL data)
{
data.CollegeId = 1;
data.Status = "Active";
data.CreatedOn = DateTime.Now;
data.UpdatedOn = DateTime.Now;
data.Save(true);
}
In meinem web.config ich hinzufügen, haben HTTP GET und POST-Anforderung als
<location path="MasterService.asmx">
<system.web>
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
</system.web>
folgt Wenn ich Google Chrome Konsole überprüfen, Es zeigt Fehler wie InsertMasterCourse.aspx nicht gefunden. .aspx hinzugefügt mit meiner Web-Service-Methode. Wie man es löst.
Versuchen Sie, das Script() Attribut zu entfernen. Dies wird dazu führen, dass es nur GET-Anfragen akzeptiert. https://stackoverflow.com/questions/941484/webmethod-vs-scriptmethod. Auch in diesem Beispiel benötigen Sie möglicherweise das ScriptService() - Attribut für die ASMX-Klassendeklaration: https://www.aspsnippets.com/Articles/Call-Consume-Web-Service-ASMX-using-jQuery-AJAX-in- ASPNet.aspx – ADyson
Ja, ich habe ScriptMethod() entfernt. aber immer noch nicht gefunden Fehler – Hisanth
haben Sie sichergestellt, dass Sie alles richtig eingerichtet haben, wie der zweite Link, den ich gab? – ADyson