2015-06-22 3 views
0

У меня есть уже существующий веб-сервис, содержащий 100 функций, вызываемых из приложения.Передача дополнительного параметра в asmx webservice

Мне нужно добавить еще один параметр (UserId) из приложения в webservice для каждого вызова.

Мне нужно будет вручную отредактировать подписи всех функций и звонков из приложения для его достижения.

Есть ли лучший/альтернативный способ отправки моего идентификатора пользователя в webservice при каждом вызове?

+1

не знаю, если его возможно, может отправить его в заголовке каким-то образом? –

+0

Вызов другой службы, которая получает идентификатор для каждой функции? – jmc

ответ

0

100s метода имеют различные подписи методов. Если подпись метода имеет один и тот же объект, вы можете добавить дополнительный параметр к этому объекту и не нужно изменять параметры для этих методов как минимум.

В противном случае необходимо изменить заголовок SOAP и добавить «UserId» в заголовке каждого запроса.

Любой, как я думаю, что нужно сделать много работы ..

0

Если вы не включили сессию и веб-сервис работает на том же сервере.

[WebMethod(EnableSession = true)] 

Вы можете хранить его в сессии,

Session["UserID"] = User.Identity.GetUserId<int>(); 

И доступ к нему, как это,

HttpContext.Current.Session["UserID"]; 
+0

Спасибо за знание. У меня есть веб-сервис на другом сервере. и он потребляется многими приложениями на других серверах. Есть ли альтернативный способ? – shaikhspear

+0

Ну, ну, если единственный подход для вас - добавить один дополнительный параметр к этим 100 функциям, то, боюсь, вы должны добавить его именно так. – choz

Смежные вопросы