JsonConvert को C # एप्लिकेशन में कैसे आयात करें?


98

मैंने C # लाइब्रेरी प्रोजेक्ट बनाया। परियोजना में एक वर्ग में यह रेखा है:

JsonConvert.SerializeObject(objectList);

मुझे यह कहते हुए त्रुटि हो रही है

वर्तमान संदर्भ में JsonConvert नाम मौजूद नहीं है।

इसे ठीक करने के लिए, मैंने System.ServiceModel.Web.dllसंदर्भों को जोड़ा लेकिन कोई भाग्य नहीं था। मैं इस त्रुटि को कैसे हल कर सकता हूं?

जवाबों:


176

JsonConvertनामस्थान से है Newtonsoft.Json, नहींSystem.ServiceModel.Web

NuGetडाउनलोड करने के लिए उपयोग करेंpackage

"प्रोजेक्ट" -> "न्यूगेट पैकेज प्रबंधित करें" -> "" न्यूटनसॉफ्ट जोंस "के लिए खोजें। ->" इंस्टॉल "पर क्लिक करें।


क्या आप .NET कोर वेबएपीआई का निर्माण कर रहे हैं या वेबसाइट नीचे मेरा उत्तर देख रहा है
मौरिसियो ग्रेसिया गुटिएरेज़

1
यह भी सुनिश्चित करें कि 'Newtonsoft.Json का उपयोग कर रहे हैं?' वहाँ है
धनुका

46

प्रोजेक्ट पर राइट क्लिक Manage NuGet Packages.. करें Json.NETऔर उस चयन करें और स्थापित करें का चयन करें

इंस्टालेशन के बाद,

निम्नलिखित नामस्थान का उपयोग करें

using Newtonsoft.Json;

तो deserialize करने के लिए निम्नलिखित का उपयोग करें

JsonConvert.DeserializeObject

.Net कोर के लिए आपको newtonsoft स्थापित करने की आवश्यकता नहीं है - मेरा उत्तर देखें
मौरिसियो ग्रेसिया

16

NuGet का उपयोग करके इसे स्थापित करें:

Install-Package Newtonsoft.Json


इसे उत्तर के रूप में पोस्ट किया जा रहा है ।


.Net कोर के लिए आपको newtonsoft स्थापित करने की आवश्यकता नहीं है - मेरा उत्तर देखें
मौरिसियो ग्रेसिया

7

या यदि आप डॉटनेट कोर का उपयोग कर रहे हैं,

अपनी .csproj फ़ाइल में जोड़ें

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

तथा

dotnet restore

.Net कोर के लिए आपको newtonsoft स्थापित करने की आवश्यकता नहीं है - मेरा उत्तर देखें
मौरिसियो ग्रेसिया

6

लिनक्स

यदि आप लिनक्स और .NET कोर का उपयोग कर रहे हैं , तो यह प्रश्न देखें , आप उपयोग करना चाहते हैं

dotnet add package Newtonsoft.Json

और फिर जोड़ें

using Newtonsoft.Json;

जरूरत है कि किसी भी वर्ग के लिए।


.Net कोर के लिए आपको newtonsoft स्थापित करने की आवश्यकता नहीं है - मेरा उत्तर देखें
मौरिसियो ग्रेसिया


2

यदि आप एक .Net कोर वेबएपीआई या वेबसाइट विकसित कर रहे हैं, तो आपको json serialization / deserealization करने के लिए newtownsoft.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 फ्रेमवर्क वेबएपीआई या वेबसाइट विकसित कर रहे हैं, तो आपको पैकेज को डाउनलोड और इंस्टॉल करने के लिए 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


0

पैकेज को इंस्टाल करने के बाद आपको newtonsoft.json.dll को फ्लोिंग कमांड को रन करके असेंबल पथ में जोड़ना होगा।

अपनी विधानसभा का उपयोग करने से पहले, हमें इसे वैश्विक असेंबली कैश (GAC) में जोड़ना होगा। विजुअल स्टूडियो 2008 कमांड प्रॉम्प्ट को फिर से खोलें (विस्टा / विंडोज 7 / आदि के लिए। इसे प्रशासक के रूप में खोलें)। और निम्न कमांड निष्पादित करें। gacutil /id :\myMethodsForSSIS\myMethodsForSSIS\binYouRelease-26myMethodsForSSIS.dll

अधिक जानकारी के लिए इस लिंक को प्रवाहित करें http://microsoft-ssis.blogspot.com/2011/05/referencing-custom-assembly-inside.html


0

C # में यह प्रयास करें। यह काम करता हैं:

var jsonObject = JsonConvert.DeserializeObject(File.ReadAllText(MyFilePath));

नाम स्थान से नीचे आयात करें:

JsonConvert के लिए: using Newtonsoft.Json;

फ़ाइल के लिए: using System.IO;

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.