2012-06-08 31 views
18

तो मैं टीम नींव सर्वर पर काम से घर पर एक परियोजना डाउनलोड कर रहा हूँ। मैं प्रोजेक्ट डाउनलोड करता हूं और यह त्रुटि के कारण संकलित नहीं होगा। चेतावनी 2 संदर्भित घटक 'EntityFramework' नहीं मिला। क्या कोई भी मार्गदर्शन प्रदान कर सकता है कि मैं कैसे काम करने के लिए इकाई ढांचे को प्राप्त कर सकता हूं। मैंने nuget पैकेज स्थापित किया।संदर्भित घटक 'EntityFramework' नहीं मिला।

ठनक

+0

डेटा ऑब्जेक्ट्स का उपयोग करने वाली सभी परियोजनाओं में? –

+0

आपका क्या मतलब है? डेटाबेस का उपयोग करने वाले सभी तत्व मुझे कंपाइलर त्रुटियां देते हैं। क्या कुछ बदलना है? – qwertyuywertwer

+0

क्या आपने Nuget के साथ पैकेज को पुनर्स्थापित किया था? वे आमतौर पर स्रोत नियंत्रण में संग्रहीत नहीं होते हैं। क्या आपने यह सुनिश्चित किया है कि आपके डेटा ऑब्जेक्ट को संदर्भित करने वाले आपके समाधान में मौजूद सभी परियोजनाओं में इकाई फ्रेमवर्क का सक्रिय संदर्भ है? इस तरह की त्रुटि के साथ ये सामान्य समस्याएं हैं। –

उत्तर

30

मैं सुझाव है कि आप की जाँच करने के:

1) "NuGet निर्माण के दौरान लापता संकुल डाउनलोड करने दें" टिक

Tool --> Options... --> Package Manager --> General enter image description here

2) "परियोजना चयनित " ticked

Solution Explorer --> right-click on the solution/project --> Manage NuPackages enter image description here

3) पुनर्निर्माण समाधान

enter image description here

संपादित

पूर्णता के लिए मैं जोड़ने के लिए है कि आप एक सीआई प्रणाली के साथ काम कर रहे हैं, तो चाहते हैं (उदाहरण के लिए जेनकींस) या आप कमांड लाइन पर MSBuild का उपयोग कर रहे हैं, तो आप सक्षम NuGet पैकेज बहाल यह काम करने के लिए चयन करने की आवश्यकता:

Enable NuGet Package Restore http://docs.nuget.org/docs/Workflows/images/enable-package-restore.png

+0

दुर्भाग्यवश ऐसे कई मामले हैं जहां "NuGet को अनुपलब्ध पैकेज डाउनलोड करने की अनुमति दें" सक्षम है, लेकिन NuGet अभी भी वास्तव में संदर्भों को डाउनलोड और पुनर्स्थापित नहीं करता है। मैं विजुअल स्टूडियो 2015 अपडेट 3 का उपयोग कर रहा हूं। NuGet के साथ उपयोगकर्ता अनुभव अभी भी बिल्कुल सही नहीं है। – Dai

+0

@ दाई: कभी-कभी, _packages_ फ़ोल्डर की सामग्री को हटाना आवश्यक है। यदि आप ऐसा करते हैं, तो पैकेज पुनर्स्थापना हमेशा विफल होने के बिना काम करता है। –

17

मैं एक ही समस्या थी। मैं इसे इस तरह हल:

  1. चुनें References> राइट-क्लिक करें>Add Reference ...
  2. चुनें Browse टैब
  3. अपने परियोजना फ़ोल्डर का पता लगाएं>packages>EntityFramework.4.1.10331.0>lib
  4. चुनें EntityFramework.dll
  5. क्लिक करें OK
+0

यह मेरे लिए काम करता है, nuget पैकेज को पुनर्स्थापित करने के विपरीत – user1534664

+0

जाहिर है कि विवरण अब अलग हैं (EntityFramework के पास इस उत्तर के बाद से कुछ संशोधन हुए हैं), लेकिन यह सबसे अच्छा समाधान था जब NuGet पहले से ही पैकेज स्थापित था लेकिन परियोजना का गलत पथ था डीएल के लिए। – Ellesedil

+0

यह एक उपयोगी उत्तर था। मैंने हाल ही में NuGet का उपयोग करके एक पैकेज के संस्करण को अपग्रेड किया है लेकिन csproj फ़ाइल में संदर्भ को हाल ही में डीएलएल में अपडेट नहीं किया गया था। – DaveInCaz

1

डेवलपर्स द्वारा सुझाए गए अच्छे तरीके हैं, आप अपनी समस्या का समाधान करने के लिए इस समाधान को भी आजमा सकते हैं।

आपके मामले में आपके प्रोजेक्ट में EntityFramework लाइब्रेरी का संदर्भ है, लेकिन लाइब्रेरी यह स्वयं आपके लिए प्रोजेक्ट उपलब्ध नहीं है। आप कोशिश कर सकते हैं या तो निम्नलिखित:

  • आप NuGet पैकेज प्रबंधक है, तो:

पर क्लिक करें परियोजना> NuGet पैकेज का प्रबंधन करें। यह निम्नलिखित विंडो खुल जाएगा।

EntityFramework खोजें और इंस्टॉल करें पर क्लिक करें।

NuGet Package Window


- वैकल्पिक रूप से, आपके कंप्यूटर के लिए EntityFramework लाइब्रेरी डाउनलोड करें, तो

राइट-क्लिक करें Prject-> संदर्भ जोड़ें ...-> Browse-> जानें आपकी EntityFramework लाइब्रेरी-> ठीक क्लिक करें

Like this image


- वैकल्पिक रूप से आप पुस्तकालय संदर्भ स्थापित करने के लिए पैकेज प्रबंधक का उपयोग कर सकते,
जांच के लिए इस लिंक package-manager-console (नोट: यह NuGet पैकेज प्रबंधक की आवश्यकता हो सकती)

1

मैं के तहत इकाई की रूपरेखा संदर्भ (रेफरी जोड़े) जोड़कर इस समस्या हल हो जाती सी: \ प्रोजेक्ट फ़ाइलें \ Entity ... \ Binaries \ Entity Framework.dll मेरी प्रोजेक्ट में। उम्मीद है की यह मदद करेगा!

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