2011-04-05 10 views
5

में यह सबसे अजीब त्रुटि है जिसे मैंने कभी सामना किया है।नाम या नामस्थान 'एक्स' नामस्थान 'वाई' में मौजूद नहीं है - वीएस जेनरेट कोड

यह एमवीसी वेब प्रोजेक्ट आज तक ठीक काम कर रहा था। यह कुछ हफ्तों में किसी के द्वारा काम नहीं किया गया है।

हालांकि कुछ बदल गया है, बस चल रहा है यह अब परिणाम:

The type or namespace name 'ColourboxViewModel' does not exist in the namespace 'CMSModels.ViewModels' 

(x5)

The type or namespace name 'Colourbox' does not exist in the namespace 'CMSModels' (are you missing an assembly reference?) 

(x1)

परियोजना में CMSModels के लिए एक संदर्भ है । इस संदर्भ को हटाने से मुझे नामस्थान में एक दूसरे वर्ग के लिए लगभग 200 अतिरिक्त त्रुटियां मिलती हैं, इसलिए मुझे पता है कि यह काम कर रहा है, लेकिन इन दो त्रुटियों के लिए नहीं।

यह उत्पन्न कोड की लाइन है जो करने के लिए त्रुटि अंक:

public class views_colorbox_index_aspx : System.Web.Mvc.ViewPage<IEnumerable<CMSModels.Colourbox>>, System.Web.SessionState.IRequiresSessionState, System.Web.IHttpHandler { 
... 
public class views_colorbox_content_ascx : System.Web.Mvc.ViewUserControl<CMSModels.ViewModels.ColourboxViewModel> { 

Intellisense दोनों CMSModels.ColourBox और CMSModels.ViewModels.ColourboxViewModel के स्थान उठा रहा है।

मैं पूरी तरह से स्टंप हूं। किसी भी मदद की बहुत सराहना की क्योंकि मैं पूरी तरह से नुकसान में हूं।


ठीक है मुझे समस्या मिली है - लेकिन समाधान नहीं।

वर्ग

public class ColourBoxViewModel 

के रूप में परिभाषित किया गया है अभी तक तैयार किए गए कोड 'ColourboxViewModel' के एक वर्ग के लिए लग रही है। लोअरकेस बी पर ध्यान दें। ऑटो-जेन कोड कहां से कक्षाओं के नाम प्राप्त करता है? परियोजना में खोज से पता चलता है कि लोअरकेस बी के साथ इसका कोई उल्लेख नहीं है।

यह मुद्दा रंग बॉक्स श्रेणी के लिए समान है।


समस्या हल हो गई - और @ František Žiačik आप सही थे। एक फ़ोल्डर था जिसे परियोजना से बाहर रखा गया था (यही कारण है कि पूरे प्रोजेक्ट में खोज करना और दृश्य स्टूडियो में विचारों के भीतर कुछ भी नहीं मिला) जिसमें गलत टाइप किए गए उत्तराधिकारी कथन शामिल थे। आउटसोर्स द्वारा मूल रूप से बनाए जाने पर बहिष्कृत फ़ोल्डर को कलरबॉक्स कहा जाता था। इस पर प्रतिलिपि बनाई गई और टीम के दूसरे देव द्वारा कलरबॉक्स के रूप में इसका नाम बदल दिया गया, जिसने फैसला किया, और मैंने उद्धृत किया, 'सब ठीक से वर्तनी'। कहा देव अब स्पीक एन 'वर्तनी का उपयोग कर कोड करने की अनुमति है।

+2

समाधान का पुनर्निर्माण करने का प्रयास करें। – SLaks

+0

यह एक ReSharper बग हो सकता है। मैं इसे दो बार पार आया। स्लैक्स की तरह ने कहा कि साफ करने, फिर से बनाने और अपना समाधान बनाने का प्रयास करें। अगर यह मदद नहीं करता है और आप टीएफएस का उपयोग कर रहे हैं, तो आप अपने समाधान को बंद करने और सॉरस नियंत्रण से फिर से अपने प्रोजेक्ट पर नवीनतम प्राप्त करने का प्रयास कर सकते हैं। – cordellcp3

+0

पुनर्निर्माण के परिणामस्वरूप एक ही त्रुटि हुई। हम संस्करण नियंत्रण के लिए एसवीएन का उपयोग करते हैं, हालांकि एक ही मुद्दे में रिपोजिटरी परिणामों से परियोजना की एक नई प्रति प्राप्त करना। –

उत्तर

5

तो मेरा अनुमान है।

अपने content.ascx ध्यान में रखते हुए (या जो भी यह नाम दिया है) आप घोषणा की है:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<CMSModels.ViewModels.ColourboxViewModel>" %> 

बजाय

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<CMSModels.ViewModels.ColourBoxViewModel>" %> 
+5

हम्म ... क्या आप अंतर को खोजने के लिए हममें से उन लोगों की मदद कर सकते हैं? –

+0

अद्यतन: कोई बात नहीं, मैं इसे देखता हूं। –

+0

यह मेरा पहला विचार था, लेकिन मैं गारंटी दे सकता हूं कि इस वर्ग को विरासत में प्राप्त करने वाले सभी पेज और नियंत्रण ColourBoxViewModel का उपयोग करते हैं। –

5

मैं कल इस त्रुटि थी, और मुझे ये उत्तर मिल गया, लेकिन मेरे मामले में उन्होंने मदद नहीं की। इसके बजाय यह पता चला कि प्रोजेक्ट गुणों में मेरे क्लाइंट में लक्ष्य ढांचे को .NET Framework 4 क्लाइंट प्रोफ़ाइल पर सेट किया गया था। समाधान इसे पूर्ण करने के लिए था .NET 4।उम्मीद है कि यह किसी की मदद कर सकता है, क्योंकि वीएस में त्रुटि बहुत उपयोगी नहीं है।

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