Не определен конструктор без параметров для импортируемого типа объекта, подлежащего десериализации из JSON - PullRequest
0 голосов
/ 09 октября 2019
Dim result = New JavaScriptSerializer().Deserialize(Of SearchResult)(Request.Cookies.Get("user").Value)

Исключение типа 'System.MissingMethodException' произошло в System.Web.Extensions.dll, но не было обработано в коде пользователя

Дополнительная информация: не определен конструктор без параметров для типа'System.DirectoryServices.SearchResult'.

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

В моем случае я пытаюсь использовать SearchResult из пространства имен System.DirectoryServices в качестве типа объекта для десериализации из JSON String. Как я могу решить это?

1 Ответ

0 голосов
/ 20 октября 2019

Вы не можете десериализовать объект SearchResult, поскольку у него нет открытого конструктора.

Теоретически вы можете написать JavaScriptConverter и используйте отражение для создания экземпляра целевого класса в методе Deserialize() преобразователя, но это будет хакерством первого порядка.

Либо сериализуйте и десериализуйте пользовательский класс вашего собственного создания, либопереосмыслить то, что ты делаешь.

...