У меня есть полная загрузка веб-служб WCF, которые получают объекты POST JSON и отвечают на другие форматированные данные JSON.WCF Service parse JSON as Dictionary <string, string>()
В одном конкретном методе внутри службы я пытаюсь передать объект JSON и проанализировать его как Словарь().
Интерфейс метода определяется следующим образом:
[OperationContract(Name = "GetSomeData")]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Wrapped, RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)]
string GetSomeData(AuthenticationData authData, Dictionary<string, string> options, string srcHash);
и сам метод декларации:
public string GetSomeData(AuthenticationData authData, Dictionary<string,string> options, string srcHash)
{
// do something fancy
}
authData и srcHash стандартные параметры на всех методов и содержат ожидаемый данные, правильно проанализированы как объект AuthenticationData для authData.
Другие методы отлично работают как для объявленных объектов, так и для примитивов, однако словарь всегда пуст.
Строка JSON отправляется через это:
"{\"options\",{\"id\":\"1\"}}"
Почему это не анализируется как словарь?