आयातित प्रोजेक्ट "C: \ Microsoft.CSharp.targets" नहीं मिला


126

दृश्य स्टूडियो 2005 में Visual Studio 2008 प्रोजेक्ट को खोलने का प्रयास करते समय मुझे आज यह त्रुटि मिली :

आयातित प्रोजेक्ट "C: \ Microsoft.CSharp.targets" नहीं मिला।


मैंने अपने संदर्भ का नाम बदलने के लिए किया था Microsoft.CSharp.Targetsके लिए Microsoft.CSharp.targetsमें .csprojफ़ाइलें।
स्टीफन

जवाबों:


112

नोटपैड में अपनी csproj फ़ाइल खोलें (या नोटपैड ++) लाइन खोजें:

<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />

और इसे बदल दें

<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />

22
मेरा कहना है, "<आयात परियोजना =" $ (MSBuildExtensionsPath32) \ ... "
बी क्ले शैनन

@Iomaxx, मैंने मोनो / .NET 4.0 से मोनोडेवलप बिल्ड टारगेट को मोनो / .NET 4.0 में बदलकर इस समस्या को ठीक किया।
फ्रैंक

5
माइन ने पहले ही MSBuildBinPath कहा, लेकिन इसमें नेम्स्पेस में कॉम्पैक्टफ्रैमवर्क शामिल किया: <Import Project = "$ (MSBuildBinPath) \ Microsoft.CompactFramework.CSharp.targets / />
Teysz

यदि आप मोनोडेवलप का उपयोग कर रहे हैं, तो संकुल को स्थापित करता है: "मोनो-एमएसबिल्ट" और "मोनो-एमएसबिल्ड-एसडीकेरसोलर"। नोट: लिनक्स मंज़रो पर परीक्षण किया गया।
एडुआर्डो लुसियो

अगर यह स्थापित है, तो आपको "msbuild- स्थिर" (या समकक्ष) पैकेज को हटाने की आवश्यकता होगी। नोट: लिनक्स मंज़रो पर परीक्षण किया गया।
एडुआर्डो लुसियो

59

यह एक वैश्विक समाधान है, जो विशेष पैकेज या बिन पर निर्भर नहीं है।

मेरे मामले में, मैंने अपनी मूल निर्देशिका से संकुल फ़ोल्डर को हटा दिया ।

हो सकता है कि आपके पैकेजों के कारण ऐसा होता है, लेकिन संकलक को यह संदर्भ नहीं मिल रहा है। इसलिए पहले पुराने पैकेज निकालें और नए पैकेज जोड़ें।

नए पैकेज जोड़ने के चरण

  • सबसे पहले निकालें, संकुल फ़ोल्डर ( यह आपके वर्तमान प्रोजेक्ट फ़ोल्डर के पास या एक कदम ऊपर होगा )।
  • फिर प्रोजेक्ट या समाधान को पुनरारंभ करें।
  • अब, समाधान फ़ाइल का पुनर्निर्माण करें।
  • प्रोजेक्ट को न्यूगेट पैकेज मैनेजर से नए संदर्भ मिलेंगे। और आपकी समस्या का समाधान हो गया है।

यह उचित समाधान नहीं है, लेकिन मैंने इसे यहां पोस्ट किया है क्योंकि मैं एक ही मुद्दे का सामना करता हूं।

मेरे मामले में, मैं भी दृश्य स्टूडियो में अपने समाधान को खोलने में सक्षम नहीं था और अन्य SO उत्तरों के साथ कोई मदद नहीं मिली।


1
जैसा कि अल्फ मो कहते हैं, बस उस फ़ाइल को अपने कंप्यूटर पर कहीं और खोजें और इसे उस फ़ोल्डर में कॉपी करें जहाँ वह इसे खोज रहा है
Serj Sagan

@SerjSagan हाँ, यह मदद करेगा, लेकिन कभी-कभी आप विज़ुअल स्टूडियो में एक समाधान फ़ाइल भी नहीं खोल सकते, उस समय मेरा समाधान मदद करेगा ..
Bharat

5
मेरे पास मैक के लिए विजुअल स्टूडियो पर यह मुद्दा था, Microsoft.CSharp.targetsकिसी कारण से फाइल को हटा दिया गया था! जैसा कि आपने कहा, मैंने packagesफ़ोल्डर को हटा दिया और विजुअल स्टूडियो को फिर से शुरू किया, जादुई रूप से यह काम किया!
A-Sharabiani

1
यह मेरे लिए तय है, लेकिन मेरा एक सहयोगी पहली बार यह काम पाने में सक्षम था। जब भी यह काम करता है, मुझे कुछ और मिल गया है!
जेकप्लैटफोर्ड

1
अच्छा एक भाई! मैंने इस पर 1 घंटा खो दिया
ह्यूगो नावा कोप्प

20

मेरे लिए मुद्दा यह था कि परियोजना के पथ में% 20 वर्ण थे, क्योंकि गिट ने उन जगहों के बजाय जोड़ दिया जब रिपॉजिटरी को क्लैक्शन किया गया था। यदि पैकेज का रास्ता बहुत लंबा है तो एक और समस्या हो सकती है।


1
यह मेरे लिए मुद्दा था। प्रोजेक्ट नाम में इसमें स्थान था इसलिए गिट क्लोन के बाद निर्देशिका का नाम इसमें% 20 था। आप git clone <RepoUrl> <LocalDirName>% 20
Dan Cook

11

MSDN पर यह लिंक इस कारण को समझने में बहुत मदद करता है कि यह काम क्यों नहीं करता है। $ (MSBuildToolsPath) Microsoft.Build.Engine v3.5 का पथ है (जब आप VS2008 में बनाते हैं तो प्रोजेक्ट फ़ाइल में स्वचालित रूप से सम्मिलित किया जाता है)। यदि आप .Net 2.0 के लिए अपनी परियोजना बनाने की कोशिश करते हैं, तो सुनिश्चित करें कि आपने इस पथ को $ (MSBuildBinPath) में बदल दिया है जो Microsoft.Build.Engine v2.0 का पथ है।


11

मेरे मामले में मैं अपने समाधान में 5 परियोजनाओं में से एक को लोड नहीं कर सका ।

इसने विज़ुअल स्टूडियो को बंद करने में मदद की और मुझे फ़ोल्डर के तहत नगेट फ़ोल्डर को हटाना पड़ा ।Microsoft.Net.Compilers.1.3.2packages

बाद में, अपने समाधान को फिर से खोलें और उम्मीद के मुताबिक लोड किया गया प्रोजेक्ट

बस सुनिश्चित करने के लिए, फ़ोल्डर को हटाने से पहले वीएस के सभी उदाहरणों को बंद करें।


6

मैं इस csproj फ़ाइल में निम्नलिखित पंक्ति है:

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

इस फ़ाइल को हटाने के बाद, यह ठीक काम करता है।


6

यदि आप कहते हैं कि त्रुटि का सामना करना पड़ता है Microsoft.CSharp.Core.targets not found, तो ये कदम हैं जो मैंने सही करने के लिए उठाए हैं:

  1. किसी भी पिछले कार्यशील प्रोजेक्ट फ़ोल्डर को खोलें और त्रुटि में दिखाए गए लिंक पर नेविगेट करें, जो फ़ाइल के Projects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/लिए खोज और है Microsoft.CSharp.Core.targets

  2. इस फ़ाइल को कॉपी करें और इसे गैर-कार्यशील परियोजना में डालें tools folder(अर्थात, गैर-कार्यशील परियोजना में उपकरण फ़ोल्डर में नेविगेट करना)

  3. अब अपनी परियोजना को बंद करें (यदि यह खुला था) और इसे फिर से खोलें।

यह अब काम करना चाहिए।

इसके अलावा, यह सुनिश्चित करने के लिए कि आपके अब खुले Visual Studio प्रोजेक्ट में सब कुछ ठीक से काम कर रहा है, पर जाएं Tools > NuGetPackage Manager > Manage NuGet Packages For Solution। यहां, आपको एक त्रुटि मिल सकती है जो कहती है, CodeAnalysis.dll किसी अन्य एप्लिकेशन द्वारा उपयोग किया जा रहा है।

फिर से, tools folderनिर्दिष्ट फ़ाइल पर जाएं और इसे हटाएं। वापस आ जाओ Manage NuGet Packages For Solution। आपको एक लिंक मिलेगा जो आपको रीलोड करने के लिए कहेगा, इसे क्लिक करें और सब कुछ फिर से स्थापित हो जाता है।

आपका प्रोजेक्ट अब ठीक से काम करना चाहिए।


3

विंडोज को पुनः इंस्टॉल करने के बाद मुझे यह मिला। विजुअल स्टूडियो स्थापित किया गया था, और मैं न्यू प्रोजेक्ट विंडो में सिल्वरलाइट प्रोजेक्ट प्रकार देख सकता था, लेकिन एक को खोलने से काम नहीं चला। समाधान सरल था: मुझे Visual Studio के लिए सिल्वरलाइट डेवलपर रनटाइम और / या Microsoft सिल्वरलाइट 4 टूल इंस्टॉल करना था। यह बेवकूफ लग सकता है, लेकिन मैंने इसे अनदेखा कर दिया क्योंकि मुझे लगा कि यह काम करना चाहिए, क्योंकि सिल्वरलाइट प्रोजेक्ट प्रकार उपलब्ध था।


3

मेरे मामले में, मैंने नोटपैड में अपनी .csproj फ़ाइल खोली और निम्नलिखित तीन पंक्तियों को हटा दिया। एक जादू की तरह काम किया:

<Import Project="..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.0.0\build\Microsoft.Net.Compilers.props')" />
<Import Project="..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props" Condition="Exists('..\packages\Microsoft.Net.Compilers.1.3.2\build\Microsoft.Net.Compilers.props')" />

2

ठीक है तो क्या हुआ अगर यह यह कहता है: gt / lt संकेतों के बीच

आयात परियोजना = "$ (MSBuildExtensionsPath) \ Microsoft \ Silverlight \ v3.0 \ Microsoft.Silverlight.CSharp.targets" /

मैं लक्ष्य त्रुटि कैसे ठीक करूं?

मैंने यह भी पाया कि एक डेमो प्रोजेक्ट में आयात स्ट्रिंग (विशेष रूप से रोब ईज़ेनबर्ग द्वारा "अपने खुद के MVVM फ्रेमवर्क का निर्माण")।

आप lomaxx VS2010 आरटीएम ने सुझाव दिया एक के साथ कि आयात की जगह तो रिपोर्ट है कि आप स्थापित करने की आवश्यकता इस


2

त्रुटियों के साथ Microsoft.WebApplications.targets, आप कर सकते हैं:

  1. अपने TFS सर्वर में Visual Studio 2010 (या विकास मशीन के समान संस्करण) स्थापित करें।
  2. Microsoft.WebApplication.targetsविकास मशीन फ़ाइल से TFS बिल्ड मशीन में "कॉपी" करें ।

यहाँ पोस्ट है।


1

यह त्रुटि सिल्वरलाइट प्रोजेक्ट खोलने के दौरान भी हो सकती है जिसे SL 4 में बनाया गया था, जबकि आपके पास SL 5 स्थापित है।

यहाँ एक उदाहरण त्रुटि संदेश है: आयातित प्रोजेक्ट "C: \ Program Files (x86) \ MSBuild \ Microsoft \ Silverlight \ v4.0 \ Microsoft.Silverlight.CSharp.targets" नहीं मिला।

नोट v4.0।

हल करने के लिए, परियोजना को संपादित करें और खोजें:

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

और इसे बदलकर v5.0 करें।

फिर परियोजना को फिर से लोड करें और यह खुल जाएगा (जब तक कि आपके पास SL 5 स्थापित नहीं है)।


0

मैंने obj फोल्डर को डिलीट कर दिया और फिर प्रोजेक्ट को उम्मीद के मुताबिक लोड किया।


0

कभी-कभी समस्या .csproj फ़ाइल में हार्डकोडेड वीएस संस्करण के साथ हो सकती है। यदि आपके पास अपने csproj में ऐसा कुछ है:

[...]\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets"

आपको जांचना चाहिए कि क्या संख्या सही है (यह गलत है इसका कारण यह है कि प्रोजेक्ट विजुअल स्टूडियो के दूसरे संस्करण के साथ बनाया गया है)। यदि यह गलत है, तो इसे बिल्ड टूल के अपने वर्तमान संस्करण से बदल दें या VS चर का उपयोग करें:

[...]\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets"

0

मैं एक एन्सिबल प्लेबुक को निष्पादित करते समय इस मुद्दे पर भाग गया था, इसलिए मैं यहां अपने 2 सेंट जोड़ना चाहता हूं। मैंने विज़ुअल स्टूडियो के लापता होने के बारे में एक चेतावनी संदेश देखा। विजुअल स्टूडियो संस्करण 14 को 2015 में जारी किया गया था और मेरी समस्या का समाधान मेरे Azure DevOps एजेंट की होस्ट मशीन पर Visual Studio 2015 Professional स्थापित कर रहा था।


0

पुनर्स्थापित करने की कोशिश करने के बाद, वीएस को बंद करने, असफल पैकेज को हटाने, फिर से खोलना, बहाल करने की कोशिश करना, कई बार मैंने पैकेजों में सब कुछ हटा दिया और जब मैंने एक पुनर्स्थापना की और यह पूरी तरह से काम किया।

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