जवाबों:
नोटपैड में अपनी csproj फ़ाइल खोलें (या नोटपैड ++) लाइन खोजें:
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
और इसे बदल दें
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
यह एक वैश्विक समाधान है, जो विशेष पैकेज या बिन पर निर्भर नहीं है।
मेरे मामले में, मैंने अपनी मूल निर्देशिका से संकुल फ़ोल्डर को हटा दिया ।
हो सकता है कि आपके पैकेजों के कारण ऐसा होता है, लेकिन संकलक को यह संदर्भ नहीं मिल रहा है। इसलिए पहले पुराने पैकेज निकालें और नए पैकेज जोड़ें।
नए पैकेज जोड़ने के चरण
यह उचित समाधान नहीं है, लेकिन मैंने इसे यहां पोस्ट किया है क्योंकि मैं एक ही मुद्दे का सामना करता हूं।
मेरे मामले में, मैं भी दृश्य स्टूडियो में अपने समाधान को खोलने में सक्षम नहीं था और अन्य SO उत्तरों के साथ कोई मदद नहीं मिली।
Microsoft.CSharp.targets
किसी कारण से फाइल को हटा दिया गया था! जैसा कि आपने कहा, मैंने packages
फ़ोल्डर को हटा दिया और विजुअल स्टूडियो को फिर से शुरू किया, जादुई रूप से यह काम किया!
मेरे लिए मुद्दा यह था कि परियोजना के पथ में% 20 वर्ण थे, क्योंकि गिट ने उन जगहों के बजाय जोड़ दिया जब रिपॉजिटरी को क्लैक्शन किया गया था। यदि पैकेज का रास्ता बहुत लंबा है तो एक और समस्या हो सकती है।
git clone <RepoUrl> <LocalDirName>
% 20
MSDN पर यह लिंक इस कारण को समझने में बहुत मदद करता है कि यह काम क्यों नहीं करता है। $ (MSBuildToolsPath) Microsoft.Build.Engine v3.5 का पथ है (जब आप VS2008 में बनाते हैं तो प्रोजेक्ट फ़ाइल में स्वचालित रूप से सम्मिलित किया जाता है)। यदि आप .Net 2.0 के लिए अपनी परियोजना बनाने की कोशिश करते हैं, तो सुनिश्चित करें कि आपने इस पथ को $ (MSBuildBinPath) में बदल दिया है जो Microsoft.Build.Engine v2.0 का पथ है।
मेरे मामले में मैं अपने समाधान में 5 परियोजनाओं में से एक को लोड नहीं कर सका ।
इसने विज़ुअल स्टूडियो को बंद करने में मदद की और मुझे फ़ोल्डर के तहत नगेट फ़ोल्डर को हटाना पड़ा ।Microsoft.Net.Compilers.1.3.2
packages
बाद में, अपने समाधान को फिर से खोलें और उम्मीद के मुताबिक लोड किया गया प्रोजेक्ट
बस सुनिश्चित करने के लिए, फ़ोल्डर को हटाने से पहले वीएस के सभी उदाहरणों को बंद करें।
मैं इस csproj फ़ाइल में निम्नलिखित पंक्ति है:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
इस फ़ाइल को हटाने के बाद, यह ठीक काम करता है।
यदि आप कहते हैं कि त्रुटि का सामना करना पड़ता है Microsoft.CSharp.Core.targets not found
, तो ये कदम हैं जो मैंने सही करने के लिए उठाए हैं:
किसी भी पिछले कार्यशील प्रोजेक्ट फ़ोल्डर को खोलें और त्रुटि में दिखाए गए लिंक पर नेविगेट करें, जो फ़ाइल के Projects/(working project name)/packages/Microsoft.Net.Compilers.1.3.2/tools/
लिए खोज और है Microsoft.CSharp.Core.targets
।
इस फ़ाइल को कॉपी करें और इसे गैर-कार्यशील परियोजना में डालें tools folder
(अर्थात, गैर-कार्यशील परियोजना में उपकरण फ़ोल्डर में नेविगेट करना)
अब अपनी परियोजना को बंद करें (यदि यह खुला था) और इसे फिर से खोलें।
यह अब काम करना चाहिए।
इसके अलावा, यह सुनिश्चित करने के लिए कि आपके अब खुले Visual Studio प्रोजेक्ट में सब कुछ ठीक से काम कर रहा है, पर जाएं Tools > NuGetPackage Manager > Manage NuGet Packages For Solution
। यहां, आपको एक त्रुटि मिल सकती है जो कहती है, CodeAnalysis.dll किसी अन्य एप्लिकेशन द्वारा उपयोग किया जा रहा है।
फिर से, tools folder
निर्दिष्ट फ़ाइल पर जाएं और इसे हटाएं। वापस आ जाओ Manage NuGet Packages For Solution
। आपको एक लिंक मिलेगा जो आपको रीलोड करने के लिए कहेगा, इसे क्लिक करें और सब कुछ फिर से स्थापित हो जाता है।
आपका प्रोजेक्ट अब ठीक से काम करना चाहिए।
विंडोज को पुनः इंस्टॉल करने के बाद मुझे यह मिला। विजुअल स्टूडियो स्थापित किया गया था, और मैं न्यू प्रोजेक्ट विंडो में सिल्वरलाइट प्रोजेक्ट प्रकार देख सकता था, लेकिन एक को खोलने से काम नहीं चला। समाधान सरल था: मुझे Visual Studio के लिए सिल्वरलाइट डेवलपर रनटाइम और / या Microsoft सिल्वरलाइट 4 टूल इंस्टॉल करना था। यह बेवकूफ लग सकता है, लेकिन मैंने इसे अनदेखा कर दिया क्योंकि मुझे लगा कि यह काम करना चाहिए, क्योंकि सिल्वरलाइट प्रोजेक्ट प्रकार उपलब्ध था।
मेरे मामले में, मैंने नोटपैड में अपनी .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')" />
ठीक है तो क्या हुआ अगर यह यह कहता है: gt / lt संकेतों के बीच
आयात परियोजना = "$ (MSBuildExtensionsPath) \ Microsoft \ Silverlight \ v3.0 \ Microsoft.Silverlight.CSharp.targets" /
मैं लक्ष्य त्रुटि कैसे ठीक करूं?
मैंने यह भी पाया कि एक डेमो प्रोजेक्ट में आयात स्ट्रिंग (विशेष रूप से रोब ईज़ेनबर्ग द्वारा "अपने खुद के MVVM फ्रेमवर्क का निर्माण")।
आप lomaxx VS2010 आरटीएम ने सुझाव दिया एक के साथ कि आयात की जगह तो रिपोर्ट है कि आप स्थापित करने की आवश्यकता इस ।
यह त्रुटि सिल्वरलाइट प्रोजेक्ट खोलने के दौरान भी हो सकती है जिसे 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 स्थापित नहीं है)।
मैंने obj फोल्डर को डिलीट कर दिया और फिर प्रोजेक्ट को उम्मीद के मुताबिक लोड किया।
कभी-कभी समस्या .csproj फ़ाइल में हार्डकोडेड वीएस संस्करण के साथ हो सकती है। यदि आपके पास अपने csproj में ऐसा कुछ है:
[...]\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets"
आपको जांचना चाहिए कि क्या संख्या सही है (यह गलत है इसका कारण यह है कि प्रोजेक्ट विजुअल स्टूडियो के दूसरे संस्करण के साथ बनाया गया है)। यदि यह गलत है, तो इसे बिल्ड टूल के अपने वर्तमान संस्करण से बदल दें या VS चर का उपयोग करें:
[...]\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.targets"
मैं एक एन्सिबल प्लेबुक को निष्पादित करते समय इस मुद्दे पर भाग गया था, इसलिए मैं यहां अपने 2 सेंट जोड़ना चाहता हूं। मैंने विज़ुअल स्टूडियो के लापता होने के बारे में एक चेतावनी संदेश देखा। विजुअल स्टूडियो संस्करण 14 को 2015 में जारी किया गया था और मेरी समस्या का समाधान मेरे Azure DevOps एजेंट की होस्ट मशीन पर Visual Studio 2015 Professional स्थापित कर रहा था।
Microsoft.CSharp.Targets
के लिएMicrosoft.CSharp.targets
में.csproj
फ़ाइलें।