4

Оригинальный вопрос:JSON.net 5,0 NuGet пакет для Silverlight не распознается

Есть ли что-то мне нужно изменить с пространством имен, Newtonsoft.Json или файлы packages.config для того, чтобы Visual Studio 2010, Silverlight 5, NuGet и JSON.Net - все играют вместе правильно?

После обновления:

Есть даже сборка Json.Net (или пакет NuGet) для Silverlight 5?

У меня есть решение с несколькими проектами в решении, где проекты ссылаются на библиотеки JSON.net. Я реорганизую решение Visual Studio для использования NuGet вместо статической загруженной версии (а затем ссылки на файл DLL).

Щелкните правой кнопкой мыши по проектам и выберите «Управление пакетами NuGet», как и следовало ожидать, и позволит мне установить пакет Json.net в проекты .NET 3.5 в рамках решения и проекты Silverlight в рамках решения. .. эта точка

Я установила настройки для поиска обновлений и дать NuGet разрешения на загрузку недостающих пакетов

The packages.config файлы, найденных в пределах 3.5 и Silverlight 5 проектов ссылки:

package id="Newtonsoft.Json" version="5.0.8" targetFramework="net35" 

и

package id="Newtonsoft.Json" version="5.0.8" targetFramework="sl50" 

соответственно.

Нет ошибок компиляции в .NET 3.5 проектов, но и для Silverlight 5 проектов, которые вы получите:

The type or namespace name 'Newtonsoft' could not be found (are you missing a using directive or an assembly reference?) 
C:\CognexWorkSpace\TAF_Tools\src\TypeSafeEnumeration.Common\Enumeration.Serialization.cs 

Есть ли что-то мне нужно изменить с пространством имен, Newtonsoft.Json или файлы packages.config для того, чтобы Visual Studio 2010, Silverlight 5, NuGet и JSON.Net играли вместе правильно?

FWIW: Visual Studio 2010 Intellisense флаги линия:

using Newtonsoft.Json; 

нерешенными, но опять-таки только в Silverlight 5 проектов.

Update

Я должен был быть более четким по структуре решения. В настоящее время у меня есть два проекта (Json.Net35 и json.Silverlight), которые скомпилированы из исходного кода Json.net 4. Другие проекты в решении затем ссылаются на конкретный вариант сериализатора JSON, необходимый для этого проекта.

Рефакторинг решения заключается в обновлении базы кода, которая привела к внедрению NuGet. При временном блокировании подхода NuGet я решил напрямую обратиться к DLL Json.net.Когда я скачал бинарные файлы, хотя, ZIP архив содержит только эти варианты:

Net20 
Net35 
Net40 
Net45 
Portable 
Portable40 
WinRT 

Этот вопрос в настоящее время превращается в:

Есть даже сборка Json.Net (или пакет NuGet), доступные для Silverlight 5 ?

Если нет, то легко объяснить вопрос пакета NuGet, с которого я начал, и я вернусь к исходному (текущему) подходу, но с более новой версией исходного кода.

+0

Возможно, связанный, весь код Silverlight и Windows Phone был [удален] (https://github.com/JamesNK/Newtonsoft.Json/commit/44bc7ea2462e0cd858ad68a8918938ebfdea8b0b) из проекта через несколько дней после выпуска версии 5.0.8. – Stijn

ответ

0

Если вы используете VS2010, переносные проекты не поддерживаются, и вам нужно будет вернуться к 4.5 версиям Json.Net. Я не уверен, что что-то улучшилось благодаря тому, что Silverlight может даже использовать преимущества, так как проекты Portable обычно исключают многие из обновленных функций Json.Net.

Это особенно относится к Silverlight, так как это должны быть проекты Portable40, которые исключают больше, чем сами переносные классы.

Смежные вопросы