2013-11-25 7 views
7

मुद्दा यहाँ वर्णित से बचने के लिए:.net 4.0 के साथ संगत json.net के संस्करण को कैसे स्थापित करें?

Could not load type 'System.Runtime.CompilerServices.ExtensionAttribute' from assembly 'mscorlib

मैं .net 4.0 4.5 के बजाय (विजुअल स्टूडियो 2013 में) को लक्षित करने के लिए अपने परियोजना के निर्माण के लिए कोशिश कर रहा हूँ, लेकिन मैं निम्नलिखित त्रुटियाँ मिलती है:

  • प्रकार या नाम स्थान का नाम 'Newtonsoft' नहीं पाया जा सका (हैं आप एक का उपयोग कर के निर्देश या एक विधानसभा संदर्भ अनुपलब्ध है?)

    प्राथमिक संदर्भ " Newtonsoft.Json "को हल नहीं किया जा सका क्योंकि इसे" .NETFramework, Version = v4.5 "फ्रेमवर्क के विरुद्ध बनाया गया था। यह वर्तमान में लक्षित ढांचे ".NETFramework, Version = v4.0" से अधिक संस्करण है।

तो मैं json.net का एक संस्करण स्थापित करना चाहता हूं जो .NET 4.0 के साथ संगत है। मैं देखता हूं कि डाउनलोड किए गए NuGet पैकेज में lib/4.5 के अलावा lib/4.0 निर्देशिका है, लेकिन मैं यह नहीं समझ सकता कि पैकेज प्रबंधक को 4.5 संस्करण के बजाय इसका उपयोग कैसे किया जाए।

मैं जेएसनेट.net के संस्करण का उपयोग करके json.net के संस्करण का उपयोग करके bukd के लिए अपने प्रोजेक्ट समाधान को कैसे प्राप्त कर सकता हूं, जो केवल .NET 4.5 के साथ काम करता है।

उत्तर

4

पैकेज प्रबंधक कंसोल से update-package -reinstall चलाएं।

+1

यह न्यूटॉन्सॉफ्ट.जेसन पैकेज का नवीनतम संस्करण स्थापित करेगा (जिसमें सभी लक्ष्य शामिल हैं: .net2.0, 3.5 4.0, 4।5, पोर्टेबल 4.0 और पोर्टेबल 4.5) फिर वर्तमान csproj सेटिंग्स को lib लक्ष्यीकरण का चयन करें। – Reda

1

तरह से मैं यह करने के लिए मिल गया है:

  1. मुझे मैं के लिए संस्करण है कि आप चाहते हैं (उदाहरण के लिए भेजने के लिए अपना समाधान में अपनी वी.एस. समाधान बंद
  2. मैन्युअल सभी packages.config फ़ाइलों को संपादित अपने समाधान के लिए डिस्क पर आईडी = "Newtonsoft.Json" संस्करण = "6.0.3" targetFramework = "net40")
  3. जाओ संकुल फ़ोल्डर में करने के लिए उन्हें बदल गया है और वहाँ में
  4. Newtonsoft.Json हटाएं संस्करण को हटाना आपके समाधान के लिए आउटपुट पथ से डीएलएल और एक्सएमएल
  5. परियोजनाओं है कि अपने समाधान में json.net का उपयोग
  6. पैकेज प्रबंधक खोलने
  7. दृश्य स्टूडियो में समाधान को खोलने के लिए बिन निर्देशिका (उपयोग मेनू हटाएँ:, उपकरण, NuGet पैकेज प्रबंधक में समाधान के लिए NuGet पैकेज का प्रबंधन मेरी वी.एस. के संस्करण)
  8. पैकेज प्रबंधक संवाद के शीर्ष पर, यह mssing संकुल के बारे में शिकायत - क्लिक पर अपने समाधान के लिए डिस्क पर संकुल फ़ोल्डर में पुनर्स्थापित
  9. जाओ और जाँच करें कि यह सही संस्करण स्थापित
  10. साफ समाधान (अन्यथा Newtonsoft.Json dll और xml आउटपुट पथ में प्रतिस्थापित नहीं किया जाएगा)
  11. बिल्ड और जाँच लें कि उत्पादन रास्ते में DLL सही संस्करण है और सही ढांचे के लिए (NewtonSoft पुराने संस्करणों के लिए फ़ाइल विवरण में .net संस्करण डालता है)

यदि इन चरणों में से किसी सका अनुकूलित किया जाए मुझे यह जानना अच्छा लगेगा कि कैसे ...

संबंधित मुद्दे