9

मेरे पास निम्न कोड है, जो लैम्ब्डा अभिव्यक्ति के तहत एक स्क्विग्ली लाल रेखा दिखाता है। कोई भी (System.Linq संस्करण 3.5 और 4.0 के बीच "संदिग्ध आमंत्रण" की वजह से - मैं कैसे एक विशेष संस्करण का उपयोग करने के लिए मजबूर करते हैं यहसिस्टम के दो संस्करणों को चुनकर संदिग्ध आमंत्रण। लिनक

यह कम्पाइल और ठीक चलाता

string[] allowedExtensions = { "PNG", "JPG", "JPEG", "GIF" }; 
string fileExtension = (Path.GetExtension(postedFile.FileName) ?? "NULL").ToUpper().TrimStart(new[] { '.' }); 

if (this.MediaService.FileAllowed(postedFile) 
    && allowedExtensions.Any(e => e == fileExtension)) 
{ ... } 

अद्यतन:

मैं अब पूरी में सभी (60) परियोजनाओं देख लिया है?। समाधान और सभी टी वह System.dll और System.Core.dll का संदर्भ संस्करण 4.0 है - मैं वास्तव में समझ नहीं पा रहा हूं कि इसे 3.5 से संदर्भ कहां मिल रहा है।

+0

यदि यह संकलित करता है और ठीक चलता है, तो क्या केवल एक कॉस्मेटिक समस्या है? क्या आपने परियोजना को पूरी तरह से पुनर्निर्माण करने की कोशिश की है? – svick

+0

यह सिर्फ एक कॉस्मेटिक समस्या है, लेकिन अभी भी कष्टप्रद है। कोई खुशी के साथ पुनर्निर्माण की कोशिश की ... – greg84

+0

क्या आप Resharper का उपयोग कर रहे थे? –

उत्तर

6

आपके पास शायद दो मॉड्यूल हैं जो विभिन्न संस्करणों का संदर्भ देते हैं। उन संदर्भों के लिए प्रोजेक्ट फ़ाइलों को खोजें और उन्हें स्थिरता (4.0) पर लाएं।

+0

हाय @ बर्ट्रैंड - मैंने पूरे समाधान में सभी परियोजनाओं की जांच की है और System.dll और System.Core.dll के सभी संदर्भ संस्करण 4.0 हैं - मैं वास्तव में समझ नहीं पा रहा हूं कि यह कहां से 3.5 हो रहा है! :( – greg84

+0

अजीब। आपके उपयोग कथन कैसा दिखते हैं? –

+1

हाय @ बर्ट्रैंडलेरॉय - मशीन की पुनरारंभ की तरह दिखता है चाल चल रहा था! बहुत अजीब। मैं आपको जवाब दूंगा क्योंकि मैंने पहली बार ऐसा किया जब मैंने सामना किया समस्या। आपकी मदद के लिए धन्यवाद। – greg84

10

रीशर्पर के बाद मुझे एक समस्या में 'सिस्टम' कोर 'और' आयात सिस्टम.लिंक 'की पेशकश करने के बाद यह समस्या थी, जहां मैं एक लिंक अभिव्यक्ति का उपयोग कर रहा था लेकिन अभी तक' System.Linq 'आयात नहीं किया था। जब मैंने ReSharper कमांड को निष्पादित किया, तो मुझे कुछ त्रुटि मिली कि इसका हिस्सा असफल रहा था। तब मेरे प्रोजेक्ट में सभी लिंक अभिव्यक्ति सिस्टम के बीच अस्पष्ट थे। 3.5 और 4.0। मेरे सभी सिस्टम और सिस्टम को देख रहे हैं। अधिक संदर्भ, वे 4.0 थे। System.Core (4.0) के संदर्भ को हटाने से अस्पष्टता त्रुटियां दूर हो गईं, और सिस्टम बनाया गया। उस परियोजना के संदर्भों की सूची से गायब हो गया। जब मैं सिस्टम को फिर से जोड़ने के लिए वापस चला गया। अधिक, हालांकि यह समाधान एक्सप्लोरर में संदर्भों की मेरी सूची में प्रकट नहीं हुआ था, लेकिन इसे 'संदर्भ जोड़ें' संवाद में चेक किया गया था। वहां इसे अन-चेक करने का प्रयास करने और फिर इसे फिर से जांचने के लिए एक त्रुटि हुई जिसके परिणामस्वरूप System.Core को पहले से ही मेरे प्रोजेक्ट द्वारा संदर्भित किया गया है। मैं अभी भी त्रुटियों को ठीक कर रहा हूं इसलिए मुझे नहीं पता कि यह निर्माण प्रक्रिया को प्रभावित करेगा या नहीं।

+6

मैं अभी रिशेपर के साथ एक ही समस्या में भाग गया और उसी परिणाम के साथ समाप्त हुआ। मैंने तुरंत त्रुटि को गुमराह किया, हालांकि, इस सवाल को मिला, पहला जवाब पढ़ें, बर्ट्रैंड के उत्तर पर टिप्पणियां पढ़ने के बाद वीएस को पुनरारंभ किया और इसे ठीक कर दिया। निर्माण फिर से शुरू करने के तुरंत बाद ठीक काम किया। –

+1

@ निकलर्सन को जानना अच्छा है। पुनरारंभ करने के बाद भी मुझे अभी भी मेरी त्रुटि है, जहां System.Core समाधान एक्सप्लोरर की संदर्भों की सूची में प्रकट नहीं होता है, लेकिन 'संदर्भ जोड़ें ...' संवाद में चेक किया गया है, और सिस्टम को अनचेक और पुन: जांचने का प्रयास कर रहा है। क्या परिणामस्वरूप त्रुटि होती है सिस्टम। कोर पहले ही जोड़ा जा चुका है। काश मैं शुरुआत में फिर से शुरू करने के साथ चला गया था! जब मैं एक स्वच्छ निर्माण के लिए मिलता हूं तो मुझे पता चल जाएगा कि यह मेरे लिए एक स्थायी समस्या है ... –

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