c# आपको असेंबली mscorlib, संस्करण=4.0.0 का संदर्भ जोड़ना होगा




linq asp.net-core (3)

मुझे यह त्रुटि तब मिली जब मैंने टेम्पलेट क्लास लाइब्रेरी (.NET स्टैंडर्ड) का उपयोग करके एक नया प्रोजेक्ट बनाया और उसमें कुछ कोड पोर्ट किए जिन्हें मैं फिर से उपयोग करना चाहता था।

मैंने एक नया प्रोजेक्ट क्लास लाइब्रेरी (.NET फ्रेमवर्क) बनाया और इसके बजाय कोड को वहां स्थानांतरित किया और इसने बिना किसी समस्या के काम किया।

मुझे आरसी 1 से आरसी 2 तक एक वेब परियोजना को स्थानांतरित करने में कुछ परेशानी हो रही है। जब मैंने स्विच किया, तो मुझे पूरे प्रोजेक्ट में इन त्रुटियों का एक गुच्छा मिल रहा है।

प्रकार 'फ़ंक <,>' को एक असेंबली में परिभाषित किया गया है जिसे संदर्भित नहीं किया गया है। आपको असेंबली 'mscorlib, संस्करण = 4.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = b77a5c561934e089' का संदर्भ जोड़ना होगा

ऐसा लगता है कि सभी लाइनक फ़ंक्शंस और लैम्ब्डा एक्सप्रेशन काम नहीं कर रहे हैं।

यह मेरी project.json फ़ाइल की तरह दिखता है:

  "frameworks": {
    "netcoreapp1.0": {
      "dependencies": {
        "System.Linq": "4.1.0-rc2-24027"
      },
      "imports": [ "net451", "portable-net45+win8" ]
    }
  },
  "dependencies": {
    "NETStandard.Library": "1.5.0-rc2-24027",
    "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final",
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0-rc2-final",
    "System.ComponentModel.Annotations": "4.1.0-*"
  }

किसी भी विचार यह क्या मतलब है? मैंने dotnet restore चलाने की कोशिश की है, मदद नहीं की।


वास्तव में, यह समस्या एक पुराना काम है जिसके लिए asp.net 4.0 या 4.5 vesion (कोर से कम) की आवश्यकता होती है।

Microsoft गिरते हुए NuGet पैकेज को स्थापित करके इसके लिए एक समाधान प्रदान करता है।

Microsoft.NETCore.Portable.Compatibility

इस तरह आप पुराने लिबास के साथ अपना कोड चला पाएंगे।


मेरे पास एक ही मुद्दा था और अपनी project.json लिए निम्नलिखित पैकेज को जोड़ना था। किसी पर निर्भरता ने इसे मेरे लिए निर्धारित किया:

"Microsoft.NETCore.Portable.Compatibility": "1.0.1-rc2-24027",

यह पैकेज mscorlib- आधारित पीसीएल के साथ संगतता को सक्षम करता है।