Как импортировать JsonConvert в приложение C#?



Я создал проект библиотеки C#. Проект имеет эту строку в одном классе:



JsonConvert.SerializeObject(objectList);


Я получаю сообщение об ошибке




имя JsonConvert не существует в текущем контексте.




чтобы исправить это, я добавил System.ServiceModel.Web.dll к ссылкам, но не повезло. Как я могу решить эту ошибку?

690   7  

7 ответов:

JsonConvert из пространства имен Newtonsoft.Json, а не System.ServiceModel.Web

использовать NuGet скачать package

"проект" - > "Управление пакетами NuGet" - > "Поиск"newtonsoft json". -> нажмите кнопку "Установить".

правой кнопкой мыши на проекте и выберите Manage NuGet Packages.. В этом выберите Json.NET и установить

после установки,

используйте следующее пространство имен

using Newtonsoft.Json;

затем используйте следующее для десериализации

JsonConvert.DeserializeObject

установите его с помощью NuGet:

Install-Package Newtonsoft.Json


Posting этой в качестве ответа.

Сервис - > Диспетчер Пакетов NuGet - > Консоль Диспетчера Пакетов

PM> Install-Package Newtonsoft.Json

или если вы используете ядро dotnet,

добавить в свою .csproj file

  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json" Version="9.0.1" />
  </ItemGroup>

и

dotnet restore

Linux

если вы используете Linux и .NET Core, см. Этот вопрос, вы хотите использовать

dotnet add package Newtonsoft.Json

и затем добавить

using Newtonsoft.Json;

для любых классов, нуждающихся в этом.

если вы разработка .Net Core WebApi или веб-сайта Вам не нужно устанавливать newtownsoft.json для выполнения сериализации/десереализации json

просто убедитесь, что ваш метод контроллера возвращает JsonResult и звонок return Json(<objectoToSerialize>); как в этом примере

namespace WebApi.Controllers
{
    [Produces("application/json")]
    [Route("api/Accounts")]
    public class AccountsController : Controller
    {
        // GET: api/Transaction
        [HttpGet]
        public JsonResult Get()
        {
            List<Account> lstAccounts;

            lstAccounts = AccountsFacade.GetAll();

            return Json(lstAccounts);
        }
    }
}

если вы разрабатываете.Net Framework WebApi или веб-сайт, вам нужно использовать NuGet для загрузки и установки newtonsoft json пакета

"Проект" - > " Управление NuGet пакеты "- > " Поиск "newtonsoft json". -> нажмите кнопку "Установить".

namespace WebApi.Controllers
{
    [Produces("application/json")]
    [Route("api/Accounts")]
    public class AccountsController : Controller
    {
        // GET: api/Transaction
        [HttpGet]
        public JsonResult Get()
        {
            List<Account> lstAccounts;

            lstAccounts = AccountsFacade.GetAll();

            //This line is different !! 
            return new JsonConvert.SerializeObject(lstAccounts);
        }
    }
}

более подробную информацию можно найти здесь - https://docs.microsoft.com/en-us/aspnet/core/web-api/advanced/formatting?view=aspnetcore-2.1

Comments

    Ничего не найдено.