powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Способ передачи параметров в методы WebService ?
35 сообщений из 35, показаны все 2 страниц
Способ передачи параметров в методы WebService ?
    #37608105
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день.

Подскажите пожалуйста, как используя asp webform можно правильно организовать передачу параметров в методы WebService

Например , есть страница с DetailsView содержащим пару десятков разнотипных полей для заполнения , по кнопке нужно запихать все это в базу без постбеков.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608123
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вообще mywebserviceProxy.SaveFields(string field1, int field2 ....)
"без постбэка" - поместить detailsview в updatepanel?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608133
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zoriaну вообще mywebserviceProxy.SaveFields(string field1, int field2 ....)

то есть без перечисления никак ? ))


Zoria"без постбэка" - поместить detailsview в updatepanel?

лучше уж webservice чем updatepanel.
Хотя, если использовать updatepanel то и с передачей параметров париться не нужно (binding сработает) и webservice не нужен, да ?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608134
Zoria
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
угу
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608148
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zoriaугу

Спасибо.

Надо решить как красивше ....
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608184
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608360
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ http://api.jquery.com/jQuery.ajax/

Спасибо , а что предпочтительней webservice или jQuery.ajax ?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608428
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey1306Спасибо , а что предпочтительней webservice или jQuery.ajax ?
Что предпочтительнее, автомобиль или руль?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608434
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey1306то есть без перечисления никак ? ))
Как. Формируете на клиенте массив json объектов, а на сервере его десериализуете в человеческий T[].
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37608857
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУAndrey1306Спасибо , а что предпочтительней webservice или jQuery.ajax ?
Что предпочтительнее, автомобиль или руль?

Если честно, не понял.


МСУAndrey1306то есть без перечисления никак ? ))
Как. Формируете на клиенте массив json объектов, а на сервере его десериализуете в человеческий T[].

Ок. Спасибо.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37611873
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробую создать вот так
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
function Save(params, callbackResult, callbackError) {
    if (params) {
        ExecuteService(params,
        "WebServises/HRService.asmx/ADD",
        callbackResult,
        callbackError
        );
    }
} 

function ExecuteService(params, url, callbackSuccess, callbackError) {
    alert(url);
    var request = $.ajax({
        type: "POST",
        url: url,
        dataType: "text",
        data: "params",
        success: callbackSuccess,
        error: callbackError
    });

    request.done(function (msg) {
      alert( msg );   contentType: "application/json; charset=utf-8",
  });

  request.fail(function (jqXHR, textStatus) {
      alert("Request failed: " + textStatus);
  });
}



постоянно попадаю на ошибку.

Вебсериса такой
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
namespace mkofficeweb.WebServises
{
    /// <summary>
    /// Summary description for HRService
    /// </summary>
    [WebService(Namespace = "http://microsoft.com/webservices/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    [System.Web.Script.Services.ScriptService]
    public class HRService : System.Web.Services.WebService
    {
        [WebMethod]
        public string ADD(string parametr)
        {
            return parametr;
        }
    }
}



Веб сервис тестировал , через браузер доступен.

Совневаюсь правильно ли указан путь
Код: c#
1.
 "WebServises/HRService.asmx/ADD"


все остальное вроде бы правильно. Закоментил параметры уже , передаю просто строку,все равно ошибке.

Подскажите где я мог ошибиться.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37611878
.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
.
Гость
Andrey1306постоянно попадаю на ошибку.какую?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37611885
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.Andrey1306постоянно попадаю на ошибку.какую?

Чуть не успел, вот что показывает IE 404.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37611887
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если путь указать так "../WebServises/HRService.asmx/ADD" что правильно , тогда 500 ошибка.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37611942
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IE помог разобраться. Без параметров вызвать получилось.

при вызове в таком виде , для передачи простой строки
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
    var request = $.ajax({
        type: "POST",
        url: url,
        dataType: "text",
        data: "value2",
        success: callbackSuccess,
        error: callbackError
    });



Получаю ошибку пропущен параметр param из моего мебметода. То есть метод доступен.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37611946
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
годится ли для передачи json такой пример http://www.gotdotnet.ru/forums/4/135120/
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37612015
dzone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще вариант использовать http://www.ajaxpro.info/ он делает практически любой класс видимым(доступный) для javascript, можно просто создать класс который сохраняет данные (не придется создавать веб сервис, не нужен updatepanel все проще ) и на форме просто вызывать через скрипт нужные функции сохранения.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37613797
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С параметрами стало все ясно, в вебсервисе и на клиенте они по разном назывались ....

Кратко кто то может пояснить в чем преимущество использывания jQuery.ajax при обращении к вебсервису, перед простым вызовом метода вебсервиса из javascript с передачей параметров. Кроме как передачи параметров в json ни чего в голову не приходит, но думаю что это тут ни при чем.

В чем фишка то ?!
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37614022
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey1306В чем фишка то ?!
Например, в возможности асинхронно вызвать метод.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37614024
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и вообще, почитайте, сколько вкусностей есть в $.ajax.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37614144
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУAndrey1306В чем фишка то ?!
Например, в возможности асинхронно вызвать метод.


ну по моему вызов из javascript метода вебсервиса и получение ответа и так асинхронно ?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37614150
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

А не порекомендуете способы , сериализации и десереализации параметров, для передачи их с клиента на сервер используя json.

и еще , а есть способы ассинхронно загрузить картинку на сайт без ajaxtoolkit ?.

например, я делаю страничку где вводят имя пользователя и фото. Получится это передать с помощью одной отправки , или для изображения всегда отдельно ?


Заранее спасибо .
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37614353
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey1306ну по моему вызов из javascript метода вебсервиса и получение ответа и так асинхронно ?
Так "по-моему" или точно?

Andrey1306МСУ, А не порекомендуете способы , сериализации и десереализации параметров, для передачи их с клиента на сервер используя json.
http://msdn.microsoft.com/ru-ru/library/bb310857.aspx
http://msdn.microsoft.com/ru-ru/library/system.web.script.serialization.javascriptserializer.aspx

Andrey1306а есть способы ассинхронно загрузить картинку на сайт без ajaxtoolkit ?.
Причем тут AJAX Control Toolkit? Грузите асинхронно картинку через обычный хендлер.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37614383
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,


Спасибо.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37616671
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильно ли понимаю процедуру ?


Что есть сейчас
1. Есть aspx страничка данные в которую помещаются в DetailsView с помощью LINQtoSQL

Нужно сохранять данные ассинхроннно, для этого я:

1. После измененения данных и нажатия кнопки сохранить я формирую JSON строку.
2. JSON передаю с помощью $.ajax в веб метод, там десериализую JSON строку в некий класс
3. в том же веб методе формирую запрос на вставку данных в базу.


Так или все в топку ?
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37617075
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё верно. Но лучше добавить п.4 - возвращаю результат на клиента в колбэке.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37617843
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУВсё верно. Но лучше добавить п.4 - возвращаю результат на клиента в колбэке.

ок. я просто до этого пункта не дошел еще )).
Извиняюсь конечно за назойливость но
у меня почему то не получается передать на сервер обьект json

при такой передаче

Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
  var request = $.ajax({
        type: "POST",
        url: url,
        processData: false,
        contentType: "application/json",
        dataType: "json",
        data: params,
        error: callbackError,
        success: function(data) {
           alert(data);
        }
    });



params = "{"BirthDay":"01.01.2000","login":"test"}"

такой JSON строки {"BirthDay":"01.01.2000","login":"test"} получается вызвать только такой метод
Код: c#
1.
2.
3.
4.
public string test(string BirthDay, string login)
       {
            return "успех";
       }



Не могу понять , как сразу обьект JSON передать ...
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37618064
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Весь код в студию. На кофе гадать не умею (и не хочу).
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37618152
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так собственно он тут весь
передаю на сервер
Код: c#
1.
"{"BirthDay":"01.01.2000","login":"test"}"


Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
  var request = $.ajax({
        type: "POST",
        url: url,
        processData: false,
        contentType: "application/json",
        dataType: "json",
        data: params,
        error: callbackError,
        success: function(data) {
           alert(data);
        }
    });



хочу получить тут
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
    /// <summary>
    /// Summary description for HRService
    /// </summary>
   [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
   // [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    [System.Web.Script.Services.ScriptService]
    public class HRService : System.Web.Services.WebService
    {

[WebMethod]
       public string ADD(Object param)
       {
            return "param.ToString()";
       }...





получаю в ответ ошибку

Код: c#
1.
{"Message":"Invalid web service call, missing value for parameter: 'param'.","StackTrace":"   at System.Web.Script.Services.WebServiceMethodData.CallMethod(Object target, IDictionary`2 parameters)\r\n   at System.Web.Script.Services.WebServiceMethodData.CallMethodFromRawParams(Object target, IDictionary`2 parameters)\r\n   at System.Web.Script.Services.RestHandler.InvokeMethod(HttpContext context, WebServiceMethodData methodData, IDictionary`2 rawParams)\r\n   at System.Web.Script.Services.RestHandler.ExecuteWebServiceCall(HttpContext context, WebServiceMethodData methodData)","ExceptionType":"System.InvalidOperationException"}
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37618512
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Снимаю вопрос как передать массив на сервер.

Мат часть не до конца осилил.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37618757
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С другой стороны не понятно, я отправил на сервер JSON данные и получил там обьект класcа User см.рис , а в каком случае тогда применять JavaScriptSerializer Deserialize , если JSON просто как строковый параметр уходит
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37620997
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В данном случае у нас простой объект с дефолтными правилами сериализации, можно и так оставить. Для более сложных же телодвижений берем мясорубку.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37621021
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ
Andrey1306а есть способы ассинхронно загрузить картинку на сайт без ajaxtoolkit ?.
Причем тут AJAX Control Toolkit? Грузите асинхронно картинку через обычный хендлер.

Уточню
То есть через хендлер можно загрузить на сервер картинку асинхронно , использую только javascript (или JQUERy) и вебсервис ?
Если четно нагуглить не смог как это сделать (видел пару примеров через updatepanel, но тут и так ясно). В основном все примеры как с помощью хендлера получить картинку.

МСУВ данном случае у нас простой объект с дефолтными правилами сериализации, можно и так оставить. Для более сложных же телодвижений берем мясорубку.

А пример в двух словах (что более сложные телодвижения )Спасибо.
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37621054
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey1306Уточню То есть через хендлер можно загрузить на сервер картинку асинхронно , использую только javascript (или JQUERy) и вебсервис ?
Картины по дефолту грузятся асинхронно через хендлер (фишка браузера). А так - есть специальный тип хендлера.

Andrey1306А пример в двух словах (что более сложные телодвижения )Спасибо.
Можно.
JavaScriptConverter
JavaScriptSerializer.RegisterConverters
...
Рейтинг: 0 / 0
Способ передачи параметров в методы WebService ?
    #37621106
Andrey1306
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

Ясно , спасибо. Таких задач нету пока. Просто обертка над БД.
...
Рейтинг: 0 / 0
35 сообщений из 35, показаны все 2 страниц
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Способ передачи параметров в методы WebService ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]