कई प्रकार पाए गए जो 'होम' नाम के नियंत्रक से मेल खाते हैं


318

वर्तमान में मेरे पास दो असंबंधित MVC3 परियोजनाएं हैं जो ऑनलाइन होस्ट की जाती हैं।

एक ठीक काम करता है, दूसरा काम नहीं करता है, मुझे त्रुटि दे रहा है:

कई प्रकार पाए गए जो 'होम' नाम के कंट्रोलर से मेल खाते हैं। ऐसा हो सकता है यदि वह मार्ग जो इस अनुरोध को सेवा देता है ('{कंट्रोलर} / {एक्शन} / {आईडी}') अनुरोध से मेल खाने वाले कंट्रोलर की खोज करने के लिए नाम स्थान निर्दिष्ट नहीं करता है।

यदि यह स्थिति है, तो 'MapRoute' पद्धति का एक अधिभार जो 'नेमस्पेस' पैरामीटर लेता है, को कॉल करके इस मार्ग को पंजीकृत करें।

मेरे होस्टर के काम करने का तरीका यह है कि वह मुझे एफ़टीपी एक्सेस देता है और उस फ़ोल्डर में मेरे पास दो अन्य फ़ोल्डर हैं, मेरे प्रत्येक एप्लिकेशन के लिए एक।

ftpFolderA2 / foo.com

ftpFolderA2 / bar.com

foo.com ठीक काम करता है, मैं अपने आवेदन को अपनी स्थानीय फ़ाइल प्रणाली में प्रकाशित करता हूं और फिर सामग्री को एफ़टीपी करता है और यह काम करता है।

जब मैं अपलोड करता हूं और bar.com चलाने की कोशिश करता हूं, तो ऊपर का मुद्दा आग लगा देता है और मुझे अपनी साइट का उपयोग करने से रोकता है। सभी foo.com अभी भी काम करता है

क्या bar.com ftpFolderA2 के अंदर नियंत्रकों से खोज कर रहा है और इसीलिए वह दूसरा खोज रहा है HomeController? मैं इसे केवल नियंत्रक फ़ोल्डर में देखने के लिए कैसे कह सकता हूं जैसा कि इसे करना चाहिए?

तथ्य:

  1. क्षेत्रों का उपयोग नहीं। ये दो पूर्ण असंबंधित परियोजनाएं हैं। मैं प्रत्येक प्रकाशित परियोजना को प्रत्येक संबंधित फ़ोल्डर में रखता हूं। कुछ भी आकर्षक नहीं।
  2. प्रत्येक प्रोजेक्ट में केवल 1 HomeController है।

क्या कोई पुष्टि कर सकता है कि यह समस्या है?


बहुत अस्पष्ट प्रश्न। क्या आप क्षेत्रों का उपयोग कर रहे हैं? क्या समस्या स्थानीय स्तर पर होती है?
डारिन दिमित्रोव

1
@ डारिन: उस जानकारी को संपादित किया।
केवल बोलिवियन हियर

जवाबों:


473

यह त्रुटि संदेश अक्सर तब होता है जब आप क्षेत्रों का उपयोग करते हैं और आपके पास क्षेत्र और रूट के अंदर एक ही नियंत्रक नाम होता है। उदाहरण के लिए आपके पास दो हैं:

  • ~/Controllers/HomeController.cs
  • ~/Areas/Admin/Controllers/HomeController.cs

इस समस्या को हल करने के लिए (जैसा कि त्रुटि संदेश आपको सुझाव देता है), आप अपने मार्गों की घोषणा करते समय नाम स्थान का उपयोग कर सकते हैं। तो मुख्य मार्ग परिभाषा में Global.asax:

routes.MapRoute(
    "Default",
    "{controller}/{action}/{id}",
    new { controller = "Home", action = "Index", id = UrlParameter.Optional },
    new[] { "AppName.Controllers" }
);

और आपके में ~/Areas/Admin/AdminAreaRegistration.cs:

context.MapRoute(
    "Admin_default",
    "Admin/{controller}/{action}/{id}",
    new { action = "Index", id = UrlParameter.Optional },
    new[] { "AppName.Areas.Admin.Controllers" }
);

यदि आप ऐसे क्षेत्रों का उपयोग नहीं कर रहे हैं, तो ऐसा लगता है कि आपके दोनों अनुप्रयोगों को एक ही ASP.NET अनुप्रयोग के अंदर होस्ट किया गया है और विरोध हो रहा है क्योंकि आपके पास अलग-अलग नामस्थानों में परिभाषित एक ही नियंत्रक हैं। यदि आप इस तरह के संघर्षों से बचना चाहते हैं, तो आपको उन दोनों को अलग-अलग ASP.NET अनुप्रयोगों के रूप में होस्ट करने के लिए IIS को कॉन्फ़िगर करना होगा। यदि आपके पास सर्वर तक पहुंच नहीं है, तो इसके लिए अपने होस्टिंग प्रदाता से पूछें।


मैं क्षेत्रों का उपयोग नहीं कर रहा हूँ। ये दो पूरी तरह से असंबंधित एप्लिकेशन हैं जो एक एफ़टीपी रूट फ़ोल्डर के अंदर अलग फ़ोल्डर में रहते हैं। हो सकता है कि मेरा आवेदन MVC नियंत्रकों के लिए हर जगह तलाश कर रहा है और यह दूसरे होम कंट्रोलर को विस्तारित करने के लिए होता है। मैं यह कैसे कह सकता हूं कि यह कहीं भी नहीं दिख रहा है लेकिन यह स्वयं नियंत्रक फ़ोल्डर है और बाकी की उपेक्षा करता है?
केवल बोलिवियन हियर

2
@SergioTapia, ऐसा लगता है कि वे आपके अनुप्रयोगों से संबंधित हैं। आपके होस्टिंग प्रदाता ने उन्हें उसी ASP.NET एप्लिकेशन के अंदर रखा। आपको उसे अलग-अलग उदाहरणों के रूप में IIS में विभाजित करने के लिए पूछना होगा या आपको बहुत सारी समस्याएं होंगी।
डारिन दिमित्रोव

13
धन्यवाद। ASP MVC 4.0 में आपको नामस्थान जैसे नामांकित तर्क को पारित करने की आवश्यकता है: नया [] {"AppName.Areas.Admin.Controllers"}
om471987

1
+1 - अच्छी तरह से काम करता है। मुझे नहीं पता था कि क्षेत्रों में मार्ग पंजीकरण के लिए एक अलग क्षेत्र था। हर जगह मुझे लगता है कि डारिन से एक गुणवत्ता का जवाब है :)
ट्रैविस जे

1
यदि आप क्षेत्रों का उपयोग कर रहे हैं और नियंत्रकों को नामांकित करना चाहते हैं, तो आपको क्षेत्र के अंदर और बाहर दोनों मार्गों को नामांकित करने की आवश्यकता है । केवल क्षेत्र के मार्ग के नामकरण ने मुझे यह मुद्दा दिया।
गैविन वार्ड

528

यहां एक और परिदृश्य है जहां आप इस त्रुटि का सामना कर सकते हैं। यदि आप अपनी परियोजना का नाम बदल देते हैं ताकि असेंबली का फ़ाइल नाम बदल जाए, तो आपके लिए संभव है कि आपके ASP.NET असेंबली के दो संस्करण हों, जो इस त्रुटि को पुन: उत्पन्न करेगा।

इसका उपाय है कि binआप अपने फोल्डर में जाएं और पुराने डीएल को हटा दें। (मैंने "प्रोजेक्ट का पुनर्निर्माण" की कोशिश की, लेकिन वह उन्हें हटा नहीं पाया, इसलिए यह सुनिश्चित करने के लिए जांच binकरें कि वे चले गए हैं)


1
इस त्रुटि की अन्य भिन्नता तब होती है जब आप पुनर्परिवर्तन का उपयोग करते हैं और आप कुछ "ऑटो" रिफ्लेक्टर विकल्पों का उपयोग करते हैं जिसमें नाम स्थान बदलना शामिल होता है। मेरे साथ ऐसा ही हुआ था।
सेबेस्टियन 506563

5
यदि आप एज़्योर ऐप सेवा से इसे प्राप्त कर रहे हैं, तो लॉग इन करने और फ़ाइलों को हटाने के लिए https: // <your_app_name_here> .scm.azurewebsites.net / DebugConsole पर जाएं।
टॉम ब्लोडेट

5
Thx यह मेरे लिए समस्या थी। मैंने एक मौजूदा प्रोजेक्ट को एक नए फ़ोल्डर में कॉपी / पेस्ट करके "नया" प्रोजेक्ट बनाया; पुराने बिल्ड dlls के साथ आया था, बिन फ़ोल्डर को हटाने से यह साफ हो गया
ब्रैंडो

मुझे यह तब मिला जब मैंने अपने प्रोजेक्ट फाइलों को दूसरी ड्राइव पर ले जाया। बिन फ़ोल्डर को समाशोधन इसे हल करता है। अजीब बात है।
रॉबर्टो बोनीनी

खैर यह एक बहुत ही साधारण सुधार के साथ एक दर्दनाक कष्टप्रद त्रुटि थी। धन्यवाद!
ट्रॉय ग्रोसफील्ड

63

MVC4 और MVC5 में यह थोड़ा अलग है, निम्नलिखित का उपयोग करें

/App_Start/RouteConfig.cs

namespace MyNamespace
{
    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
                namespaces:  new[] {"MyNamespace.Controllers"}
            );
        }
    }
}

और क्षेत्रों में

context.MapRoute(
                "Admin_default",
                "Admin/{controller}/{action}/{id}",
                new { action = "Index", id = UrlParameter.Optional },
                new[] { "MyNamespace.Areas.Admin.Controllers" }
            );

39

इसे देखें ... http://www.asp.net/mvc/videos/mvc-2/how-do-i/aspnet-mvc-2-areas

तब यह चित्र (आशा है कि मेरे चित्र की तरह)

यहां छवि विवरण दर्ज करें


मुद्दे को हल किया ..! :)
अरुणा

1
@ppumkin बताती है कि एक अंधे प्रोग्रामर को। पाठ को स्क्रीन के पाठकों द्वारा पढ़ा जा सकता है
कार्लोस मुनोज़

हाय कार्लोस। हां मैं स्थिति को समझता हूं। यह दृश्यता विकलांग लोगों के बिना पहले से ही इसे समझाने में कठिन है। मुझे यकीन भी नहीं है कि किसी भी प्रकार का सहायक सॉफ्टवेयर किसी भी शरीर के लिए चित्र में क्या चल रहा है, इसका वर्णन करने में सक्षम होगा। यह ध्यान में लाता है कि उत्तर में पाठ में कम से कम यह वर्णन करने की कोशिश होनी चाहिए कि क्या चल रहा है।
पायोटर कुला

32

दूसरों ने जो कहा वह सही है लेकिन उन लोगों के लिए जो अभी भी उसी समस्या का सामना कर रहे हैं:
मेरे मामले में ऐसा इसलिए हुआ क्योंकि मैंने एक और प्रोजेक्ट की प्रतिलिपि बनाई थी, जिसका नाम बदलकर कुछ और रखा गया था, लेकिनbin फ़ोल्डर में पिछली आउटपुट फाइलें अभी भी थीं ... और दुर्भाग्य से, Build -> Clean Solutionनाम बदलने के बाद मारना परियोजना और इसके उन्हें Namespaces हटा नहीं है ... इसलिए उन्हें मैन्युअल रूप से हटाने से मेरी समस्या हल हो गई!


2
आपके सुझाव ने मुझे बचा लिया
अभिमन्यु

1
मुझे भी, धन्यवाद, साफ dosnt वास्तव में साफ मतलब है, grrrr
katibaer

1
धन्यवाद @DrTJ यह निराशाजनक था! आप काम करने के लिए खतरे की साफ प्रक्रिया की अपेक्षा करते हैं और अपेक्षाएं विफलता की जड़ हैं। इसने मुझे अपने बालों को आगे खींचने से बचाया!
माइक

28

आपके प्रोजेक्ट bin/फ़ोल्डर में

सुनिश्चित करें कि आपके पास केवल आपका PROJECT_PACKAGENAME.DLL है

और ANOTHER_PROJECT_PACKAGENAME.DLL को हटा दें

यहाँ गलती से प्रकट हो सकता है या आप सिर्फ अपनी परियोजना का नाम बदल सकते हैं


2
बिल्कुल मेरा मुद्दा। धन्यवाद।
डेटिलियम

मेरे लिए काम किया! thnks!
पलक

मैंने असेंबली का नाम बदल दिया था और बिन में बैठे कुछ पुराने डीएल थे। धन्यवाद
एपीसी

धन्यवाद! मैं विश्वास नहीं कर सकता कि मैं कुछ सरल याद किया।
वश

25

बिन फ़ोल्डर की जाँच करें यदि कोई अन्य dll फ़ाइल है जिसमें होमकंट्रोलर वर्ग का विरोध हो सकता है।


7
किसी प्रोजेक्ट की प्रतिलिपि बनाते समय और उसका नाम बदलने के दौरान यह बिट मुझे ... dll नाम की पुरानी परियोजना अभी भी बिन में थी, एक सफाई ने इसे नहीं हटाया ... मुझे इसे मैन्युअल रूप से हटाना पड़ा!
पॉल ज़हरा

2
मेरे लिए यही समस्या थी। एक सहकर्मी ने गलती से एक फ्रंट-एंड प्रोजेक्ट के संदर्भ को इस मुद्दे को बनाने से दूसरे में जोड़ा। उन्होंने संदर्भ को हटा दिया, इस प्रकार विज़ुअल स्टूडियो ने अपनी डिस्क पर dll फ़ाइलों को भी हटा दिया। मैंने अपडेट को गिट से खींचा, संदर्भ चले गए थे, लेकिन डीएल फाइलें बनी रहीं, उसके बाद भी एक साफ। केवल इसलिए कि मेरे वीएस ने अब संदर्भ नहीं देखा। लेकिन जब IIS चलाते हैं तो फाइलों को देखा और उनका इस्तेमाल किया। मेरी डिस्क से उन्हें हटाने में मदद मिली।
यरोनिमो

14

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

ControllerBuilder.Current
     .DefaultNamespaces.Add("YourApp.Controllers");

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

जिस प्रोजेक्ट पर मैं काम करता हूं, उसमें कस्टम क्लाइंट काम के लिए हमारे पास एक मुख्य टर्नकी बैकऑफ़िस है। हर एक में एक 'सेटिंग' कंट्रोलर होता है। यह उत्तर प्रत्येक क्षेत्र के लिए सेटिंग्स नियंत्रक के लिए एक मार्ग को परिभाषित करने के लिए एक बढ़िया विकल्प है।
डेरिक डीन

7

भले ही आप क्षेत्रों का उपयोग नहीं कर रहे हैं, फिर भी आप अपने रूट मैप में निर्दिष्ट कर सकते हैं कि किस नामस्थान का उपयोग करना है

routes.MapRoute(
    "Default",
    "{controller}/{action}",
    new { controller = "Home", action = "Index" },
    new[] { "NameSpace.OfYour.Controllers" }
);

लेकिन ऐसा लगता है कि वास्तविक मुद्दा वह है जिस तरह से आपके दो ऐप IIS में सेट किए गए हैं


7

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


यह मेरे लिए फिक्स था। मेरी प्रकाशित प्रोफ़ाइल ने स्थानीय रूप से मौजूद फ़ाइलों को नहीं हटाया, इसलिए मेरे ऐप ने नए के अलावा पुराने dll को उठाया और डुप्लिकेट प्रकार पाए।
फॉर्म

1
मैंने अपना प्रोजेक्ट नाम बदल दिया और मैंने सभी फ़ाइलों को वापस कर दिया लेकिन फिर मुझे यह त्रुटि मिली। बिन फोल्डर को हटाना मेरे लिए भी काम कर गया।
माउरो वलवैनो

6

क्षेत्रों के साथ एक और मामला हो सकता है यहां तक ​​कि आपने क्षेत्रों में रूटिंग के सभी चरणों का पालन किया है (जैसे ग्लोबल रूटिंग टेबल में नाम स्थान देना), जो है:

आपने रूटिंग में प्रदान किए गए अपने ग्लोबल कंट्रोलर को 'नेमस्पेस' में नहीं लपेटा होगा।

उदाहरण के लिए:

यह किया:

public class HomeController : Controller
{

के बजाय:

namespace GivenNamespace.Controllers
{
   public class HomeController : Controller
   {

हाँ, यह केवल MapRoute में एक नाम स्थान प्रदान करने के लिए पर्याप्त नहीं है। यहाँ दिए गए नाम स्थान को नियंत्रक वर्ग के नाम स्थान से मेल खाना चाहिए। अब यह काम करता है!
DanKodi

6

आप 500 त्रुटि भी प्राप्त कर सकते हैं यदि आप अपने स्वयं के असेंबली को जोड़ते हैं जिसमें DefaultAssembliesResolver के GetAssemblies को अधिलेखित करके ApiController होता है और यह पहले से ही base.GetAssemblies () से सरणी में है।

इसका स्पष्ट उदाहरण:

public class MyAssembliesResolver : DefaultAssembliesResolver
{
    public override ICollection<Assembly> GetAssemblies()
    {
        var baseAssemblies = base.GetAssemblies();

        var assemblies = new List<Assembly>(baseAssemblies);

        assemblies.Add(Assembly.GetAssembly(typeof(MyAssembliesResolver)));

        return new List<Assembly>(assemblies);
    }
}

यदि उपरोक्त कोड आपके नियंत्रक के समान असेंबली में है, तो वह असेंबली दो बार सूची में होगी और 500 त्रुटि उत्पन्न करेगी क्योंकि वेब एपीआई को यह पता नहीं है कि किसका उपयोग करना है।


6

यदि आप इसे स्वचालित रूप से हल करना चाहते हैं .. तो आप एप्लिकेशन का उपयोग केवल निम्नलिखित कोड जोड़कर कर सकते हैं:

 routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional },
            namespaces: new[] { string.Format("{0}.Controllers", BuildManager.GetGlobalAsaxType().BaseType.Assembly.GetName().Name) }
        );

1
महान समाधान यदि आपके पास कई परियोजनाओं में समान नियंत्रक हैं
रवि आनंद

4

वही मुसीबत आ गई और कुछ भी मदद नहीं मिली। समस्या यह है कि मैं वास्तव में कोई डुप्लिकेट नहीं है, यह त्रुटि प्रोजेक्ट नामस्थान से स्विच करने के बाद दिखाई देती MyCuteProjectहै MyCuteProject.Web

अंत में मुझे महसूस हुआ कि त्रुटि का स्रोत एक global.asaxफ़ाइल है - एक्सएमएल मार्कअप, न कि .cs-कोडबीहिन्ड। इसमें नाम स्थान की जाँच करें - कि मेरी मदद की है।


2

मैंने बस सर्वर से फ़ोल्डर 'बिन' को हटा दिया और सर्वर पर मेरे बिन को कॉपी किया, और मेरी समस्या हल हो गई।



1

हमने पाया कि हमें यह त्रुटि तब हुई जब हमारे निर्माण में एक संघर्ष था जो एक चेतावनी के रूप में दिखा।

जब तक हमने विजुअल स्टूडियो -> टूल्स -> विकल्प -> प्रोजेक्ट्स और सॉल्यूशंस -> बिल्ड और रन -> MSBuild प्रोजेक्ट का निर्माण नहीं किया, तब तक हमें डिटेल नहीं मिली।

हमारी परियोजना एक .net v4 वेब अनुप्रयोग है और System.Net.Http (v2.0.0.0) और System.Net.Http (v4.0.0.0) के बीच एक संघर्ष था। हमारी परियोजना ने पैकेज से फ़ाइल के v2 संस्करण को संदर्भित किया (इसमें नगेट का उपयोग करना शामिल है)। जब हमने संदर्भ को हटा दिया और v4 संस्करण के लिए एक संदर्भ जोड़ा तब बिल्ड ने काम किया (चेतावनियों के बिना) और त्रुटि को ठीक किया गया था।


1

इस त्रुटि की अन्य भिन्नता तब होती है जब आप पुनर्परिवर्तन का उपयोग करते हैं और आप कुछ "ऑटो" रिफ्लेक्टर विकल्पों का उपयोग करते हैं जिसमें नाम स्थान बदलना शामिल होता है। मेरे साथ ऐसा ही होता है। इस तरह के परिदृश्य के साथ समस्या को हल करने के लिए फ़ोल्डर हटाएंbin


यह मेरे साथ तब हुआ जब मैंने 1 प्रोजेक्ट की सामग्री को दूसरे की सामग्री पर कॉपी किया। मुझे बिन फ़ोल्डर से विशिष्ट फ़ाइलों को हटाना पड़ा
एड्रियन डावल

1

प्रोजेक्ट पर राइट क्लिक करें और प्रोजेक्ट क्लीन चुनें। या फिर बिन निर्देशिका को पूरी तरह से खाली कर दें और फिर से फिर से निर्माण करें। यह पिछले बिल्ड से असेंबली के किसी भी बाएं को साफ करना चाहिए


1

किसी एकल अनुप्रयोग में कुछ समय यह समस्या भी आती है उस स्थिति में जब आप अपना आवेदन प्रकाशित करते हैं तो इन चेकबॉक्स का चयन करें यहां छवि विवरण दर्ज करें


1

यदि यह अन्य मदद कर सकता है, तो मैं भी इस त्रुटि का सामना कर रहा हूं। समस्या मुझे वेब साइट पर गलत संदर्भ के कारण हुई। अज्ञात कारण से मेरी वेब साइट उसी समाधान में, एक अन्य वेब साइट का उल्लेख कर रही थी। और एक बार मैंने उस बुरे संदर्भ को हटा दिया, तो बात ठीक से काम करने लगी।


0

यदि आप Episerver, या किसी अन्य MVC- आधारित CMS में काम कर रहे हैं, तो आप पा सकते हैं कि उस विशेष नियंत्रक नाम पर पहले ही दावा किया जा चुका है।

मेरे साथ ऐसा तब हुआ जब एक कंट्रोलर बनाने का प्रयास किया गया FileUpload


0

मैं इसी तरह के मुद्दे का सामना कर रहा था। और मुख्य कारण यह था कि मेरे पास दो अलग-अलग क्षेत्र में एक ही नियंत्रक था। एक बार जब मैं उनमें से एक को अपने ठीक काम को हटा देता हूं।

मेरे पास यह आपके लिए मददगार होगा।

परियोजना समाधान


0

मैं एक ही नियंत्रक नाम के साथ एक समाधान में दो परियोजना है मैंने पहले प्रोजेक्ट में दूसरा प्रोजेक्ट रेफरेंस निकाला और इश्यू हल किया


0

मैंने पाया है कि यह त्रुटि पारंपरिक ASP.NET वेबसाइट के साथ हो सकती है जब आप नियंत्रक को गैर App_Code निर्देशिका में बनाते हैं (कभी-कभी Visual Studio इसे रोकता है)।

यह फ़ाइल प्रकार को "संकलन" के लिए सेट करता है जबकि "App_Code" में जोड़ा गया कोई भी कोड "सामग्री" पर सेट होता है। यदि आप फ़ाइल को App_Code में कॉपी या स्थानांतरित करते हैं तो यह अभी भी "संकलन" के रूप में सेट है।

मुझे संदेह है कि यह वेबसाइट प्रोजेक्ट ऑपरेशन के साथ कुछ है क्योंकि वेबसाइट प्रोजेक्ट्स में कोई बिल्ड ऑपरेशन नहीं है। बिन फ़ोल्डर को देखने और "कंटेंट" को बदलने से यह ठीक होने लगता है।

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