NuGet के माध्यम से पैकेज का पुराना संस्करण कैसे स्थापित करें?




nuget-package (4)

मैं एक पैकेज ( Newtonsoft.Json ) का एक पुराना संस्करण स्थापित करना चाहता हूं। लेकिन NuGet वापस रोल।

PM> Install-Package Newtonsoft.Json -Version 4.0.5
Successfully installed 'Newtonsoft.Json 4.0.5'.
Install failed. Rolling back...
Install-Package : Already referencing a newer version of 'Newtonsoft.Json'.

किसी भी प्रकार की सहायता सराहनीय होगी।


मैंने जेवियर के जवाब का काफी उपयोग किया है। मैं जोड़ना चाहता हूं कि पैकेज संस्करण को निर्दिष्ट श्रेणी में प्रतिबंधित करना NuGet के नवीनतम संस्करणों में आसान और उपयोगी है।

उदाहरण के लिए, यदि आप कभी भी अपने प्रोजेक्ट में Newtonsoft.Json को संस्करण 3.xx अपडेट नहीं करना चाहते हैं, तो इस तरह दिखने के लिए अपने packages.config Newtonsoft.Json फ़ाइल में संबंधित package तत्व को बदलें:

<package id="Newtonsoft.Json" version="3.5.8" allowedVersions="[3.0, 4.0)" targetFramework="net40" />

allowedVersions विशेषता पर ध्यान दें। यह उस पैकेज के संस्करण को 3.0 ( समावेशी ) और 4.0 ( अनन्य ) के बीच के संस्करणों तक सीमित कर देगा। फिर, जब आप पूरे समाधान पर Update-Package करते हैं, तो आपको उस विशेष पैकेज के बारे में चिंता करने की आवश्यकता नहीं है जो पिछले संस्करण 3.xx अपडेट किया जा रहा है।

इस कार्यक्षमता के लिए दस्तावेज here


निम्नलिखित कोशिश करें:

Uninstall-Package Newtonsoft.Json -Force

के बाद:

Install-Package Newtonsoft.Json -Version <press tab key for autocomplete>

अब, यह विजुअल स्टूडियो 2015 में बहुत सरल है। आप पैकेज प्रबंधक कंसोल में कमांड निष्पादित किए बिना, उपयोगकर्ता इंटरफ़ेस के भीतर ही Downgrade / Upgrade कर सकते हैं।

  1. Right click on your project और go to Manage Nuget Packages

  2. नीचे दी गई छवि को देखो।

    • Select your Package and Choose the Version , जिसे आप इंस्टॉल करना चाहते थे।

बहुत बहुत सरल, है ना? :) उम्मीद है की यह मदद करेगा...


Nuget 2.8 के रूप में एक पैकेज डाउनग्रेड करने के लिए एक सुविधा है।

Nuget 2.8 रिलीज नोट्स

उदाहरण:

पैकेज प्रबंधक कंसोल में दर्ज निम्न आदेश couchbase क्लाइंट को संस्करण 1.3.1.0 में डाउनग्रेड करेगा

Update-Package CouchbaseNetClient -Version 1.3.1.0

परिणाम:

Updating 'CouchbaseNetClient' from version '1.3.3' to '1.3.1.0' in project [project name].
Removing 'CouchbaseNetClient 1.3.3' from [project name].
Successfully removed 'CouchbaseNetClient 1.3.3' from [project name].

नीचे crimbo के अनुसार कुछ ध्यान देने के लिए:

"यह दृष्टिकोण एक प्रीरलीज़ संस्करण से दूसरे प्रीरलीज़ संस्करण में डाउनग्रेड करने के लिए काम नहीं करता है - यह केवल रिलीज़ संस्करण में डाउनग्रेड करने के लिए काम करता है"