WCF: используйте контракт сообщения для создания заголовка мыла - PullRequest
2 голосов
/ 30 апреля 2010

Мне нужно добавить мыльный заголовок в мой веб-сервис. Я планирую использовать это для проверки моих клиентов (устройства Windows Mobile).

Я нашел эту ссылку: http://www.c -sharpcorner.com / UploadFile / rog_21 / soapheaders05172007120046PM / soapheaders.aspx

Именно это я и хочу сделать. Но это не написано для WCF.

Я провел некоторое исследование, и меня, кажется, парализовало число из параметров .

Я в основном хочу добавить простой заголовок к моему объекту мыла, который будет именем пользователя и паролем. Клиент не использует WCF, поэтому мыльный заголовок должен быть просто обычным мыльным заголовком.

Буду признателен за любой пример кода или толчки в правильном направлении.

Ответы [ 2 ]

3 голосов
/ 30 апреля 2010

Вместо определения DataContract используйте MessageContract

[MessageContract]
public class YourMessageType
{
  // This is in the SOAP Header
  [MessageHeader] public string UserName {get;set;}
  [MessageHeader] public string Password {get;set;}

  // This is in the SOAP body
  [MessageBodyMember] public string OtherData {get;set;}
  ...
}
0 голосов
/ 01 марта 2012

Вы также можете использовать UsernameToken в заголовке SOAP, если вам нужно передать только имя пользователя paaword и использовать пользовательский UserNamePasswordValidator в качестве поведения подключаемой службы.http://msdn.microsoft.com/en-us/library/aa702565.aspx

...