मैं कुछ कस्टम मानचित्र मार्ग बनाने का प्रयास कर रहा हूं लेकिन यह काफी सही काम नहीं कर सकता है।कस्टम मैप रूट
मेरा अंतिम लक्ष्य निम्न जैसा कुछ निर्दिष्ट करने में सक्षम होना है। जहां से मुझे अनिवार्य रूप से मेरा आईडी "आईडी" और "नाम" के मूल्य जोड़े के साथ बनाया गया है। यह नाम अप्रासंगिक है और पूरी तरह से उपयोगकर्ता की सुखदताओं के लिए, मुझे अपने नियंत्रक में आईडी की आवश्यकता होगी हालांकि।
/डैशबोर्ड्स/5-मेरी-एस्टेट के नाम/89-मेरी-उपसमूह-नाम/133-शायद-भी-एक और-उपसमूह
शुरुआत मैं पहले खंड पर काम कर रहा हूँ के लिए और परेशानी हो रही है।
ब्राउजिंग करने के लिए "http: // localhost: 53933/डैशबोर्ड्स/109-निर्माण-xyz" A public action method '109-building-xyz' was not found on controller 'MyInterfaceInterface.Controllers.DashboardsController'.
routes.MapRoute(
"Dashboard",
"dashboards/{id}-{name}", // URL pattern
new { controller = "Dashboards", action = "Index" },
new { id = @"\d+", name = UrlParameter.Optional }
);
जाहिर त्रुटि मैं इस चाहता था निम्नलिखित मार्ग उत्पन्न का उपयोग कर सूचकांक समारोह के लिए रूट किया जा करने के लिए, जबकि पैरामीटर के साथ।
मैं क्या गलत कर रहा हूं? क्या मैं इसे सही ढंग से भी संरचित कर रहा हूं? मैं एक वेब-PHP पृष्ठभूमि से आया हूं और ऐसी चीजों को प्राप्त करने के लिए htaccess का उपयोग कर रहा हूं।
धन्यवाद
क्या आपने इसे डिफ़ॉल्ट मार्ग के बाद या उससे पहले जोड़ा था? – Chris
मुझे लगता है कि आप फॉरवर्ड स्लैश का उपयोग करके केवल पैरामीटर अलग कर सकते हैं (लेकिन इस पर गलत हो सकता है)। यदि डैश को विभाजक के रूप में स्वीकार किया जाता है तो संभवतः आपको मार्ग के काम के लिए आईडी के बाद डैश शामिल करने की आवश्यकता होगी। इसके अलावा, जैसा कि क्रिस संकेत देता है, मार्ग क्रम महत्वपूर्ण है। मैं रूटडेबगर पैकेज को स्थापित करने के लिए NuGet का उपयोग करने की सलाह दूंगा (और इसे Web.config में सक्षम करें)। यह आपको आसानी से पता लगाने की अनुमति देता है कि किसी दिए गए यूआरएल मैचों का कौन सा मार्ग है। –