В старые добрые времена, если вы хотели обратиться из клиентского кода к веб-сервису, или, что серверному методу [WebMethod], то приходилось писать много кода использующего javascript-объект XMLHttpRequest. Сейчас же, если вы используете в своем ASP.NET проекте jQuery, сделать серверный запрос из клиентского кода очень просто. Допустим, у вас есть вот такой метод:
[WebMethod] public static string GetSomeNewString(string _id, string _name) { string result; /..../ return result; }
Все что вам нужно, чтобы вызвать его на клиенте это написать что-то типа:
$.ajax({ type: "POST", url: "~/Default.aspx/GetSomeNewString", data: "{'_id': '" + Id + "','_taskid': '' }", contentType: "application/json; charset=utf-8", dataType: "json", context: this, success: function (response) { //сюда мы попадаем в случае успешного выполнения серверной функции //результат выполнения будет в response.d }, failure: function (response) { //сюда мы попадаем в случае ошибки alert(response.d); } });
Кстати, этот же способ можно использовать и для веб-частей SharePoint. Единственное отличие в том, что веб-часть не может содержать серверные методы (то есть, конечно, может, но смысла в этом мало - обращаться к вы можете только либо к веб-сервисам, либо к страницам с веб-методами). Так что, все что вам нужно - это добавить в проект решения для SharePoint страницу приложения (Application Page) которая и будет содержать веб-методы:
Комментариев нет:
Отправить комментарий