2013-01-05 5 views
5

एएसपी.NET एमवीसी एप्लिकेशन में डोमेन के होम पेज के रूप में देखने के लिए रूट को कैसे सेट करें जिसमें क्षेत्र शामिल हैं। मुझे होम पेज होने के लिए किसी विशेष क्षेत्र के दृश्य की आवश्यकता है। यह कैसे किया जा सकता है?ASP.NET MVC में होम पेज के रूप में एरिया व्यू को कैसे सेट करें?

मैंने बिना किसी सफलता के निम्नलिखित कोड का उपयोग करने का प्रयास किया।

public static void RegisterRoutes(RouteCollection routes) { 
      routes.MapRoute(
       name: "Home", 
       url: "", 
       defaults: new { controller = "Home", action = "Index" }, 
       namespaces: new string[] { "WebApp.Areas.UI.Controllers" } 
       ); 
} 
+0

संभव डुप्लिकेट [कैसे एक डिफ़ॉल्ट MVC में मार्ग (एक क्षेत्र के लिए) स्थापित करने के लिए] (http://stackoverflow.com/questions/2140208/how-to-set-a-default-route-to -an-area-in-mvc) –

+0

यह एक डुप्ली है, और एकमात्र उत्तर गलत है; दूसरे प्रश्न में एक नोट शामिल है कि नीचे दिया गया उत्तर वास्तव में पूरा नहीं करेगा जो पूछताछकर्ता यहां रूट पेज ("/") की सेवा के लिए एक क्षेत्र का उपयोग करके करने के लिए कह रहा है। इसे मुख्य मार्ग चयन से रूट किया जाना है, और किसी क्षेत्र से नहीं किया जा सकता है क्योंकि नीचे दिए गए उत्तर का तात्पर्य है। –

उत्तर

3

क्षेत्र फ़ोल्डर में नाम द्वारा एक फ़ाइल AreaRegistration AreaRegistration से पाने AreaName है, यह एक समारोह RegisterArea जो मार्ग सेट है।

किसी क्षेत्र में डिफ़ॉल्ट मार्ग एरियानाम/{नियंत्रक}/{action}/{id} है। इसे संशोधित करने से क्षेत्र को डिफ़ॉल्ट क्षेत्र के रूप में सेट किया जा सकता है। उदाहरण के लिए मैंने अपनी आवश्यकता के लिए डिफ़ॉल्ट नियंत्रक को {नियंत्रक}/{action} के रूप में सेट किया है।

public class UIAreaRegistration : AreaRegistration 
{ 
     public override string AreaName 
     { 
      get 
      { 
       return "UI"; 
      } 
     } 

     public override void RegisterArea(AreaRegistrationContext context) 
     { 
      context.MapRoute(
       "UI_default", 
       "{controller}/{action}/{id}", //****** 
       new {controller = "Home", action = "Index", id = UrlParameter.Optional} 
      ); 
     } 
    } 
की
संबंधित मुद्दे