Я пишу сервис WCF REST и пытаюсь использовать идеи из поста Карлоса Фигейры в блоге здесь , чтобы настроить мою десериализацию.
Есть только одна проблема. Я хотел бы, чтобы мой пользовательский IDispatchMessageFormatter.DeserializeRequest()
для обоих:
- десериализация тела запроса
- И анализирует URI в параметрах метода (как это делает WCF по умолчанию).
Например, если у меня есть следующий метод в моем контракте на обслуживание:
[WebInvoke(Method = "POST", UriTemplate = "/{uriPart1}/{uriPart2}")]
void Func(string uriPart1, string uriPart2, SomeObject messageBodyObject);
тогда моя реализация DeserializeRequest()
должна не только десериализовать тело сообщения POST в messageBodyObject
, но и присвоить правильные значения из URI для uriPart1
, uriPart2
параметров.
Код Карлоса не выполняет вторую часть.
Я бы хотел знать, как мне этого добиться. Любая помощь будет высоко ценится.