Возможно ли разместить WebMethod в файле ascx.cs(для UserControl), а затем вызвать его из кода jQuery на стороне клиента?
По некоторым причинам я не могу поместить код WebMethod в файл .asmx или .aspx.
Пример: В ArticleList.ascx.cs у меня есть следующий код:
[WebMethod]
public static string HelloWorld()
{
return "helloWorld";
}
В файле ArticleList.ascx есть вызов WebMethod следующим образом:
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
data: "{}",
dataFilter: function(data)//makes it work with 2.0 or 3.5 .net
{
var msg;
if (typeof (JSON) !== 'undefined' &&
typeof (JSON.parse) === 'function')
msg = JSON.parse(data);
else
msg = eval('(' + data + ')');
if (msg.hasOwnProperty('d'))
return msg.d;
else
return msg;
},
url: "ArticleList.ascx/HelloWorld",
success: function(msg) {
alert(msg);
}
});
и ошибка от firebug:
<html>
<head>
<title>This type of page is not served.</title>
Как я могу успешно вызвать серверный WebMethod из моего jQuery-кода на стороне клиента?