Подтвердить что ты не робот

Почему я не могу ссылаться на System.Runtime.Serialization.Json в С#

Я хочу использовать API для получения информации от interwebz. API возвращает данные в формате Json. Я новичок в программировании, так голый со мной...

  • Я запускаю дополнение Microsoft Visual Studio С# 2010 Express.
  • Похоже, что у меня есть профиль клиента .NET Framework 4, настроенный как мой "Целевая структура", но я честно не уверен, что это означает.
  • Это приложение Windows Forms...

Не так много кода, чтобы показать, потому что я не могу начать работу без соответствующего оператора...

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Net;
using System.Runtime.Serialization.Json;

Я получаю эту ошибку:

Тип или имя пространства имен 'Json' не существует в пространстве имен "System.Runtime.Serialization" (вам не хватает сборки ссылка?)

Мне не хватает DLL файла или что-то еще? Основываясь на моих бесплодных поисках решений, я понимаю, что .NET 4.xx должен уже иметь инструменты, необходимые для разбора форматированной строки Json?

4b9b3361

Ответ 1

Пространство имен System.Runtime.Serialization.Json находится в двух разных DLL в зависимости от вашей .net-структуры.

В .NET 3.5 Он находится в System.ServiceModel.Web.dll

В .NET 4.0 и выше Он находится в System.Runtime.Serialization.dll.

Убедитесь, что вы добавили правильную DLL в качестве ссылки в свой проект и добавили using System.Runtime.Serialization.Json; в начало вашего файла кода.

EDIT - рассмотрим использование JSON.NET

Несмотря на то, что .NET Framework предоставляет собственные пространства имен для сериализации и десериализации JSON (DataContractJsonSerializer и JavaScriptSerializer), вы должны выяснить, лучше ли вам использовать JSON.NET.

JSON.NET проще в использовании, лучшей производительности и имеет гораздо больше возможностей. http://www.newtonsoft.com/json/help/html/JsonNetVsDotNetSerializers.htm

Ответ 2

вам нужно импортировать dll System.Runtime.Serialization из ссылки

Ответ 3

Вам нужно добавить ссылку на свой проект.

В обозревателе решений щелкните правой кнопкой мыши ссылки, затем добавьте ссылку. Вы увидите список DLL, и вы должны установить флажок рядом с тем, который вам нужен для его добавления в проект. После этого вы можете успешно добавить оператор using.

Надеюсь, что это поможет!

Ответ 4

Общий процесс сериализации и десериализации JSON из С#:

Добавьте ссылку на библиотеку System.Runtime.Serialization.

Добавьте с помощью директив для System.Runtime.Serialization и System.Runtime.Serialization.Json.

Ответ 5

Измените Target framework с .NET Framework 4 Client Profile на .NET Framework 4