У меня есть следующие WCF оболочки для вызова службы REST:Как использовать OperationContract для захвата заголовка ответа из запроса POST?
[DataContract]
public class InterestingResponse : IExtensibleDataObject
{
[MessageHeader(Name="x-interesting-id")]
public string InterestingId { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[ServiceContract()]
public interface IManagement
{
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = @"somePathHere")]
InterestingResponse DoInteresting();
}
Запрос, посылаемый на службу и успешно завершается. Ответ HTTP имеет пустой корпус и заголовок x-interesting-id
. Я хочу, чтобы код на стороне клиента возвращал экземпляр InterestingResponse
с InterestingId
, который был установлен на значение x-interesting-id
из ответа.
После того, как IManagement.DoInteresting()
возвращается на клиент, возвращается нулевая ссылка, потому что хорошо, ответ был пуст, ничего, чтобы десериализовать, я думаю.
Как бы мне вернуть объект вместо значения заголовка, десериализованного как член объекта?