Десериализовать JSON в анонимный объект

В C # я успешно сериализовал анонимный объект в JSON с помощью кода, подобного этому ...

var obj = new { Amount = 108, Message = "Hello" };
JavaScriptSerializer serializer = new JavaScriptSerializer();
String output = serializer.Serialize(obj);

Однако то, что я хотел бы сделать позже, - это десериализовать строка JSON обратно в анонимный объект. Что-то вроде этого ...

var obj2 = serializer.Deserialize(output, object);

Но для метода serializer.Deserialize () требуется второй параметр, который является типом объекта, в который он будет десериализоваться.

Я пробовал это ...

var obj2 = serializer.Deserialize(output, obj.GetType());

Но это вызывает ошибку:

Конструктор без параметров не определен для типа '<> f__AnonymousType0`2 [[System.Int32, mscorlib, Version = 4.0.0.0, Culture = нейтральный, PublicKeyToken = b77a5c561934e089], [System.String, mscorlib, Version = 4.0. 0.0, культура = нейтральная, PublicKeyToken = b77a5c561934e089]] '.

Я не уверен, что означает эта ошибка.

41
задан abatishchev 22 November 2018 в 00:45
поделиться