Я получаю эту ошибку в своем следующем коде, который в основном инициирует запрос POST как
ABC.ascx
var ABCid = $(aTag).data('id');
$.ajax({
type: "POST",
url: "WebMethods.aspx/Delete_Local_ABC",
data: "{'id':'" + ABCid + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: successdelete_ABC,
error: Errordelete_ABC
});
}
WebMethods.aspx.cs
[WebMethod]
public static int Delete_Local_ABC(string id)
{
ABC objABC = new ABC();
objABC.ABC_ID = Convert.ToInt32(id);
// call business manager
try
{
BusinessManager businessManager = new BusinessManager();
businessManager.ManageABC(objABC, OperationTypes.Validate);
return 1;
}
catch (Exception ex)
{
throw ex;
}
}
и я вызываю следующий метод в BusinessManager.cs
....
case OperationTypes.Validate:
obj.deleteLocalABC();
break;
...
и ABC.cs
public bool deleteLocalABC()
{
string query = "DELETE FROM TBL_ABC WHERE ABC_ID ='" + this.ABC_ID + "'";
_dbManager.executeQuery(query);
return true;
}
Я пробовал все решения, доступные в Интернете, но ничего не работает. Этот код отлично работает с Visual Studio, но не при основном развертывании.
Вы сказали, что метод находится в WebMethods.cs. ты имел ввиду WebMethods.ascx.cs? Кажется, есть некоторая путаница в том, где находится ваш метод и что вы вызываете. ваш ajax ищет WebMethods.aspx. (может быть, это нормально? Я раньше не помещал веб-метод в пользовательский элемент управления.) Попробуйте переместить веб-метод в код .aspx позади.
@PromodPiyatissa Неизвестный веб-метод Delete_Local_ABC. Имя параметра: имя метода в приложении ASP.NET является ошибкой





Использовать
[WebMethod, ScriptMethod(ResponseFormat = ResponseFormat.Json, UseHttpGet = false)]
вместо [WebMethod].
Надеюсь, после этого добавления ваш метод будет работать нормально.
в чем ошибка?