Почему я не могу ссылаться на 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?
Ответы
Ответ 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