десериализовать JSON с жалом список genric ( ошибка преобразование значения к типу... с типом системы'.Коллекции.Generic.List`1 . Path '
Здравствуйте друзья,
здесь я столкнулся с небольшой проблемой при десериализации строки json в список
строка json : результат работы службы restful
"\"[{\\\"UName\\\":\\\"prasad\\\",\\\"LastName\\\":\\\"k\\\",\\\"FirstName\\\":\\\"sai\\\"}]\""
и я хочу преобразовать эту строку json в список класса "_TempUser"
мой список :
public class _TempUser { public string UName { get; set; } public string LastName { get; set; } public string FirstName { get; set; } }
Ошибка есть
Error converting value "[{"UName":"prasad","LastName":"k","FirstName":"sai"}]" to type 'System.Collections.Generic.List`1[loginServices.Login_Service+_TempUser]'. Path '', line 1, position 70.
код в моем restful сервисе
List<_TempUser> List = new List<_TempUser>(); _TempUser ud = new _TempUser(); ud.UName = "prasad"; ud.FirstName = "sai"; ud.LastName = "k"; List.Add(ud); string json = JsonConvert.SerializeObject(List); return json;
код : для вызова службы restful
var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://IpAddress:Post/Login/RestServiceName.svc/RestMethoName"); httpWebRequest.ContentType = "text/json"; httpWebRequest.Method = "POST"; using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream())) { string json =JsonConvert.SerializeObject(Req); streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) { string result = streamReader.ReadToEnd(); // here am converting json string to "_TempUser" List List<_TempUser> List = new List<_TempUser>(); List = JsonConvert.DeserializeObject<List<_TempUser>>result } }
любые изменения или предложения плз?
Sergey Alexandrovich Kryukov
Где вы видите список? Это ассоциативный контейнер Javascript (все массивы Javascript таковы). Один такой объект.
—СА
Lokesh Kondapalli
Здравствуйте , мне очень жаль, что я не довел вас сюда своим простым вопросом
получаю json-строку типа "\"{\\"UName\\":\\"prasad\\",\\"LastName\\":\\"k\\",\\"FirstName\\":\\"sai\\\"}\""
и я хочу преобразовать эту строку в свой список : "list<_TempUser>"
возможно ли это ?
Sergey Alexandrovich Kryukov
Неверный вопрос. Нет никакого списка. Если вам нужен список, сделайте его. Десериализуйте его в _TempUser, составьте список (почему? почему?!) с этим единственным элементом.
—СА
Lokesh Kondapalli
я возвращаюсь с моей спокойной службы вот так
Список<_TempUser> Список = новый список<_TempUser&ГТ;();
Список.Добавить(уд);
строка json = JsonConvert.SerializeObject(список);
вернуть в формате JSON;
с помощью библиотеки DLL newtonsoft json на стороне сервера и клиента для сериализации и десериализации