public object BeforeSendRequest(ref System.ServiceModel.Channels.Message request, System.ServiceModel.IClientChannel channel)
{
requestMessage = request.ToString();
String guid = "";
bool understand = false;
//System.ServiceModel.Channels.MessageHeader header = System.ServiceModel.Channels.MessageHeader.CreateHeader("ServiceContext", @"http://schemas.microsoft.com/sharepoint/servicecontext", guid, understand);
MyMessageHeader obj = new MyMessageHeader();
request.Headers.Add(obj);
return null;
}
public class MyMessageHeader : MessageHeader
{
/// This method writes all header conten in the XmlWriter.
/// The header elemet is already writed in this writer.
protected override void OnWriteHeaderContents(XmlDictionaryWriter writer, MessageVersion messageVersion)
{
writer.WriteAttributeString("name", "test");
writer.WriteStartElement("data");
writer.WriteString("test");
writer.WriteEndElement();
}
/// The Name of the header element.
public override string Name
{
get { return " ServiceContext "; }
}
/// The Namespace of the header element
public override string Namespace
{
get { return @"http://schemas.microsoft.com/sharepoint/servicecontext"; }
}
}