How can I read SoapHeader in BeforeDeserialize, I try this, but it does not work. Any solution or simple example. Thank you.
public class TicketIdentity
{
private string ticket;
public string Ticket
{
get { return ticket; }
}
public TicketIdentity(string _ticket)
{
this.ticket = _ticket;
}
}
public class TicketHeader : SoapHeader
{
public string Ticket;
public TicketHeader(string ticket)
{
Ticket = ticket;
}
public TicketHeader()
{ }
}
...
string Key;
public override void ProcessMessage(SoapMessage message)
{
switch (message.Stage)
{
case SoapMessageStage.BeforeSerialize:
break;
case SoapMessageStage.AfterSerialize:
break;
case SoapMessageStage.BeforeDeserialize:
{
foreach (SoapHeader header in message.Headers)
{
if (header is TicketHeader)
{
TicketHeader tempHeader = (TicketHeader)header;
Key = tempHeader.Ticket;
}
}
}
break;
case SoapMessageStage.AfterDeserialize:
break;
default:
throw new ArgumentException("Chyba pri serializacii SOAP msg.");
}
}