Json не существует в системе имен

В этом уроке: http://www.asp.net/web-api/videos/getting-started/custom-validation Джон использует

dynamic error = new JsonObject();

с

using System.Json;

Я предполагаю, что это JsonObject здесь: http://msdn.microsoft.com/en-us/library/system.json.jsonobject(v=vs.110).aspx, расположенный в:

  • Пространство имен: System.Json
  • Сборка: System.Runtime.Serialization(в System.Runtime.Serialization.dll)

Я добавил System.Runtime.Serialization ссылку, но все еще не могу найти System.Json.

Я читаю документы Microsoft неправильно? (Я использую .NET 4.5)

Ответ 2

http://www.webcosmoforums.com/asp/32551-type-namespace-name-json-does-not-exist-namespace-system-runtime-serialization.html

Скорее всего, вам не хватает ссылки на System.ServiceModel.Web

Убедитесь, что ваше приложение настроено на платформу .Net 4.5 в свойствах проекта.

Объекты System.Json доступны только в версии 4.5

Изменить:

Используйте Nuget для установки system.json: 'Install-Package System.Json'

Как разбирать JSON без библиотеки JSON.NET?

Ответ 3

Объект Json работает только из класса Controller, а не снаружи. Даже если мы ссылаемся на внешний контроллер System.Web.MVC, у нас есть доступ только к JsonResult, а не к Json, поскольку объект Json является объектом защиты JsonResult. Пожалуйста, обратитесь к приведенной ниже документации, в которой объясняется, что

http://msdn.microsoft.com/en-us/library/dd504936(v=vs.118).aspx

Ответ 4

Если вы хотите использовать другой .net json serializer, вы можете использовать следующее:

  • перейти к управлению пакетом nuget.
  • поиск json.net.
  • нажмите кнопку установки.

для более подробной информации, follow - http://netfx.codeplex.com/

Ответ 5

Использование System.json не будет работать для .Net 4 framework. Библиотека устарела. Чтобы проверить это, попробуйте:

  • Перейти Добавить ссылку... для проекта.
  • Вкладка ".Net", Search System.json, вы не найдете.

Это означает, что он устарел.