我需要在我的网络服务中添加一个soap标头。我打算用它来验证我的客户端(Windows Mobile Devices)。
我找到了这个链接:http://www.c-sharpcorner.com/UploadFile/rog_21/soapheaders05172007120046PM/soapheaders.aspx
这正是我想要做的。但它不是为WCF编写的。
我做了一些研究,我似乎被number of options瘫痪了。
我基本上想在我的soap对象中添加一个简单的标题,它将是一个用户名和密码。客户端不使用WCF,因此soap标头只需要是普通的soap标头。
任何示例代码或正确方向推都都会受到赞赏。
答案 0 :(得分:3)
使用MessageContract
而不是定义DataContract[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;}
...
}
答案 1 :(得分:0)
如果必须仅传递用户名paaword并使用自定义UserNamePasswordValidator作为可插入服务行为,则还可以在SOAP标头中使用UsernameToken。 http://msdn.microsoft.com/en-us/library/aa702565.aspx