Как получить массив json из POST-запроса в C# webmethod
Я разработал Webmethod на языке C#. Здесь сервер отправляет массив Json в POST-запросе в следующем формате.
[{ "name" : "AAAA", "address" : "Chennai"},{"name": "BBBB", "address":"Trichy"}]
Как прочитать этот Json и сериализовать этот Json?
Что я уже пробовал:
Когда я изменяю запрос на следующий тип, мой код работает правильно.
"JsonData":{[{ "name" : "AAAA", "address" : "Chennai"},{"name": "BBBB", "address":"Trichy"}]}
Но моя просьба была не такой.
Karthik_Mahalingam
пост код
Member 12976241
[Система.Веб.Услуги.WebMethod(EnableSession = true)]
[ScriptMethod(UseHttpGet=false)]
[WebInvoke(ResponseFormat=WebMessageFormat.Json, RequestFormat = WebMessageFormat.В Формате JSON, Кузов=WebMessageBodyStyle.Голый, метод= " пост")]
общественного недействительными booking_sync()
{
var req = новый StreamReader(HttpContext. Current.Запрос.Входной поток);
Треб.BaseStream.Seek(0, SeekOrigin. Begin);
динамическое тело = req. ReadToEnd();
// Приведенный ниже код был использован при изменении формата запроса
var token = JToken.Разбор (тело);
var data = токен.Значение< jarray> ("JsonData");
}
Karthik_Mahalingam
отправляет ли это какие-либо данные клиенту?
Member 12976241
- Да, Мистер Кэтик. Я хочу отправить клиенту какой-то другой массив Json
Karthik_Mahalingam
покажите, как вы получаете значение json для отображения
Member 12976241
это мой код сериализации
Jarray resources = (JArray)JsonConvert.DeserializeObject(тело);
Karthik_Mahalingam
покажите код пользовательского интерфейса, где вы получаете значение json
Member 12976241
Я уже написал сверху
Karthik_Mahalingam
получаете какое-нибудь сообщение об ошибке?
Member 12976241
да, я получаю какую-то ошибку. Ниже я упомянул об ошибке.
Система "Типа '.Коллекции.Общий.IDictionary`2 [[Система.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089], [System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]' не поддерживается для десериализации массива."
Karthik_Mahalingam
если
"JsonData": {[{"name" : "AAAA", "address" : "Chennai"}, {"name": "BBBB", "address": "Trichy"}]}
это работает нормально, они почему бы не использовать это
Member 12976241
Из - за того, что третья сторона не отправляет данные в этом формате
Karthik_Mahalingam
попробуйте мое решение
cramtadlos
Йееес ! Я искал уже 2 часа, и ваш пример просто идеален. Спасибо.