2015-12-03 4 views
8

पर अस्थायी फ़ाइलों में अभी भी पुराना प्रोजेक्ट नाम क्यों संदर्भित किया जा रहा है मैंने एक एमवीसी सी # इंट्रानेट PROJECT_A बनाया और पूरी तरह से बेक किया। फिर मैंने एक वेबफॉर्म सी # इंट्रानेट PROJECT_B बनाया और पूरी तरह से बेक किया।विजुअल स्टूडियो

अब मैं एक कॉम्बो MVC/WebForms सी # PROJECT_C में दो विलय करने की जरूरत है।

मैंने यह किया है और यह संकलन प्रतीत होता है।


लेकिन ... जब मैं अपने VS2013 परम के अंदर नई PROJECT_C ऊपर आग, मैं उसके एवज में अनुक्रमणिका पृष्ठ पर कोई त्रुटि मिलती है ...

CS0246: The type or namespace name 'PROJECT_A' could not be found (are you missing a using directive or an assembly reference?)

में स्रोत त्रुटि खंड यह पंक्ति है जो (स्पष्ट रूप से) त्रुटि उत्पन्न करती है:

Line 1: #pragma checksum "C:\...\PROJECT_C\Views\CONTROLLERNAME\Index.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "56225EBEFF70A747D10FB7D43A7A8EFCE86DAF72" 
Line 2: //------------------------------------------------------------------------------ 
Line 3: // <auto-generated> 
Line 4: //  This code was generated by a tool. 
Line 5: //  Runtime Version:4.0.30319.34209 
Line 6: // 
Line 7: //  Changes to this file may cause incorrect behavior and will be lost if 
Line 8: //  the code is regenerated. 
Line 9: // </auto-generated> 
Line 10: //------------------------------------------------------------------------------ 
Line 11: 
Line 12: namespace ASP { 
Line 13:  using System; 
Line 14:  using System.Collections.Generic; 
Line 15:  using System.IO; 
Line 16:  using System.Linq; 
Line 17:  using System.Net; 
Line 18:  using System.Web; 
Line 19:  using System.Web.Helpers; 
Line 20:  using System.Web.Security; 
Line 21:  using System.Web.UI; 
Line 22:  using System.Web.WebPages; 
Line 23:  using System.Web.Mvc; 
Line 24:  using System.Web.Mvc.Ajax; 
Line 25:  using System.Web.Mvc.Html; 
Line 26:  using System.Web.Optimization; 
Line 27:  using System.Web.Routing; 
Line 28:  using PROJECT_A; //error line... 
Line 29:  
Line 30:  
Line 31:  public class _Page_Views_CONTROLLERNAME_Index_cshtml : System.Web.Mvc.WebViewPage<PROJECT_C.Models.Search> { 
Line 32:   
Line 33: #line hidden... 

मैं "स्पष्ट रूप से" कहता हूं क्योंकि PROJECT_A नाम में मौजूद नहीं है। केवल PROJECT_C है कि मैं इस दौर में हथौड़ा लगाने की कोशिश कर रहा हूं!

स्रोत फ़ाइल है कि माना जाता है कि त्रुटि के उत्पादन के रूप में सूचीबद्ध किया गया है:

  1. को साफ कर दिया% अस्थायी% फाइलें:

    c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\14bee5fc\75cf6bf4\App_Web_index.cshtml.8117ffad.9pjm2azc.0.cs


    इस मैंने किया है ठीक करने के लिए एक प्रयास निम्नलिखित में

  2. दोनों सी: \ विंडोज \ माइक्रोसॉफ्ट.NET \ Framework \ और c: \ Windows \ Microsoft.NET \ Framework64 \
  3. दोनों से स्पष्ट अस्थायी फ़ाइलें
  4. को खोजा, और कोड
  5. साफ़ परियोजना/समाधान web.config में
  6. चेक किए गए नामस्थान और कहीं
  7. के भीतर से PROJECT_C साथ PROJECT_A (और PROJECT_B के उदाहरण) के सभी उदाहरणों की जगह ... अधिक मैं

त्रुटि के बारे में नहीं सोच सकता।


अपडेट किया गया प्रगति:

मैं .net संस्करण के साथ अंतर के संभावित ध्यान दिया है। मेरा लक्ष्य संस्करण 4.5.1 है। हालांकि, मुझे लगता है कि केवल temp निर्देशिका नाम में हो सकता है। आप इसे उपरोक्त चिपकने वाले स्रोत कोड में देख सकते हैं। यहां मेरे वेब से है।config

<compilation debug="true" targetFramework="4.5.1"> 

मैं, फिर से, मेरी कोड के माध्यम से पुराने प्रोजेक्ट और पुराने वर्गों के लिए गुमराह संदर्भ की तलाश में कंघी है और किसी भी खोजने के लिए प्रतीत नहीं कर सकते हैं। मैंने bin/config में config.dll s को भी देखा है। मैं नेमस्पेस घोषणाओं और उपयोगों की तलाश में हूं।

इस पल के लिए मैंने मुख्य परियोजना से PROJECT_B निर्देशिका को केवल इसे साफ रखने के लिए बाहर कर दिया है।

मैं वास्तव में एक नई एमवीसी परियोजना के साथ ताजा शुरू नहीं करना चाहता क्योंकि मैंने पहले ही ऐसा किया है। लेकिन मुझे करना पड़ सकता है।


मैं जितना संभव हो उतना जानकारी शामिल करने के लिए बहुत सावधान रहा हूं। अगर मुझे कुछ याद आ रहा है तो मुझे बताएं।

सहायता के लिए बहुत बहुत धन्यवाद! मैं इस पर दो दिन पर हूँ!

+0

कक्षा में नेमस्पेस प्रोजेक्ट_ए अब जहां भी आप कक्षा के राजा का उपयोग कर रहे हैं, उन नामस्थान को project_c के साथ बदल दें या वेब कॉन्फिग में असेंबली संदर्भ जांचें, कुछ फ़ाइल अभी भी पुरानी यूआरएल को लक्षित कर रही है या अपना कोड साझा कर सकती है। –

+1

इस पर एक नज़र डालें ... http: //matthewwilliams.com/changing-namespace-for-an-mvc-project-in-visual-studio/ –

उत्तर

0

पुराने प्रोजेक्ट के नामस्थानों के लिए फ़ाइलों में ढूंढें का उपयोग करें।

सबसे अधिक संभावना है कि वेबफॉर्म डिज़ाइनर फ़ाइलों में खराब नामस्थान हैं और आपको उन्हें ढूंढने/प्रतिस्थापित करने के साथ ठीक करना चाहिए।

अन्य प्रमुख अपराधी नामस्थान कॉन्फ़िगरेशन और समान कॉन्फ़िगरेशन में web.config हो सकता है।

+0

Yup ... पहले से ही उन दोनों को देखा। नही जाओ। –

+0

क्या आप 'App_Web_index.cshtml.8117ffad.9pjm2azc.0.cs' के अंदर क्या है उससे अधिक पोस्ट कर सकते हैं? –

+0

मूल पोस्ट –

13

जांच करने के लिए एक और क्षेत्र वेब.कॉन्फिग फ़ाइल दृश्य फ़ोल्डर के नीचे बैठा है, अगर इसे विजुअल स्टूडियो द्वारा छोड़ा गया है तो ढूंढें/बदलें इसे नहीं मिल सकता है।

<namespaces> भी बदलें।

+0

धन्यवाद, यही वह जगह है जहां मेरा छुपा रहा था। – user2865446

+0

यह मेरा मामला भी था। धन्यवाद। गुगलिंग के एक घंटे के बाद मिला। – Imon

+0

यह बिना किसी समस्या के कुछ महीनों के लिए था। मैंने लगभग हर रोज परियोजना को साफ और पुनर्निर्मित किया है। लेकिन, कुछ nuget संकुल को अनइंस्टॉल करने, इंस्टॉल करने/अपग्रेड करने के बाद समस्या दिखाई दी। – Imon

0

क्या आपने .sln और .csproj फ़ाइलों के अंदर पुराने संदर्भों की तलाश की है? मेरे पास वीएस के साथ संदर्भों को हटाने के लिए भूलने के साथ कुछ समस्याएं हैं। यह वीएस में खोज का उपयोग करके इसे भी नहीं ढूंढ सकता क्योंकि फाइलें उपयोग में हैं।

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