title: How can I add authorization header to the request in WCF?
body: <p>I'm working on a Windows Form application and there's a WCF service that needs to be called. I need to add a header (authorization - custom) to the request before it's sent to the service. I have a custom inspector class as well. I tried the following but the service is not called, somehow, and it returns an exception.</p>
  
  <pre><code>public object BeforeSendRequest(ref Message request, IClientChannel channel)
  {
      MessageHeader header = MessageHeader.CreateHeader("Authorization", "", "Basic Y19udGk6Q29udGlfQjNTVA==");
      OperationContext.Current.OutgoingMessageHeaders.Add(header);
      HttpRequestMessageProperty httpRequestProperty = new HttpRequestMessageProperty();
      httpRequestProperty.Headers.Add("Authorization", "Basic Y19udGk6Q29udGlfQjNTVA==");
      httpRequestProperty.Headers.Add(HttpRequestHeader.UserAgent, "Continental");
              OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty;
      sentMessages.Add(request.ToString());
      return null;
  }
  </code></pre>
  
  <p>I also tried simplest way like this one:</p>
  
  <pre><code>MessageHeader header = MessageHeader.CreateHeader("Authorization", "", "Basic Y19udGk6Q29udGlfQjNTVA==");
  request.Headers.Add(header);
  </code></pre>
  
  <p>but it's the same, authorization header is added but it does not reach the service, how can I know what header is received by the service? I used SOAP UI and service responds well when I add such a header manually in the request (before running).</p>