@caballero
Программист

Как распарсить json в .net?

Вынужден использовать DataContractJsonSerializer
такой json
{"ErrorMessage":""}
класс
[DataContract]
    public class ResultScanResponse
    {
        [DataMember(Name = "ErrorMessage")]
        public string ErrorMessage { get; set; }
    }


код
public static T Deserialize<T>(string aJSON) where T : new()
        {
            T deserializedObj = new T();
            MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(aJSON));
            DataContractJsonSerializer ser = new DataContractJsonSerializer(aJSON.GetType());
            deserializedObj = (T)ser.ReadObject(ms);
            ms.Close();
            return deserializedObj;
        }

при десериализации пишет
"There was an error deserializing the object of type System.String. End element 'root' from namespace '' expected. Found element 'ErrorMessage' from namespace ''."

Что ему не так?
  • Вопрос задан
  • 181 просмотр
Решения вопроса 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
public static T Deserialize<T>(string aJSON) where T : new()
{
       var ms = new MemoryStream(Encoding.UTF8.GetBytes(aJSON));
       var ser = new DataContractJsonSerializer(typeof(T));
       var deserializedObj = (T)ser.ReadObject(ms);
       ms.Close();
       return deserializedObj;
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы