#c# #asp.net #json
#c# #asp.net #json
Вопрос:
Я добавил json dll в свой проект и пытаюсь сериализовать объект:
ProductType itemToEdit = new ProductType("Name");
string jsonString = JsonConvert.SerializeObject(itemToEdit);
Появляется ошибка:
В Newtonsoft.Json произошло исключение типа ‘System.missingmethod Exception’.DLL, но не был обработан в пользовательском коде
Дополнительная информация: Метод не найден: ‘Boolean System.Runtime.Сериализация.DataContractAttribute.get_IsReference()’.
Но проект строится правильно.
Комментарии:
1. на какую платформу ориентирован ваш проект? Убедитесь, что это 3.5 или 4
2. это происходит со всеми объектами или только с ProductType?
3. Да, проект выполняется правильно, потому что это
Runtime
исключение.
Ответ №1:
У меня была та же проблема. Установка .NET Framework 3.5 с пакетом обновления 1 решил проблему. Атрибут DataContractAttribute.Свойство IsReference поддерживается только в .NET framework 4, 3.5 SP1 и 3.0 SP2
Ответ №2:
Не уверен, поможет ли это, но у меня была похожая проблема с Newtonsoft.Json при его использовании с приложением Windows Phone 7.
Я получал ‘System.missingmethod Exception’, возникшее в Newtonsoft.Json.DLL при выполнении JsonConvert.SerializeObject.
Я установил с помощью NuGet, и ссылка, которую он добавил, была на Newtonsoft.Json.Silverlight.
Я изменил это на Newtonsoft.Json.WindowsPhone и это решило проблему.