से एक चरित्र के साथ टोकन के बीच शाब्दिक उप-सेगमेंट, और रूट मान, क्योंकि मैं पूछ रहा हूं क्योंकि आईआईएस कुछ एएसपी.NET फ़ोल्डरों की रक्षा करता है, जैसे बिन, ऐप_Data, App_Code, इत्यादि। यदि यूआरएल किसी वास्तविक फाइल सिस्टम फ़ोल्डर में मैप नहीं करता है, तो भी आईआईएस एक यूआरएल को निर्दिष्ट खंडों में से एक के बराबर पथ खंड के साथ अस्वीकार करता है।एएसपी.नेट रूटिंग: शाब्दिक उप-सेगमेंट
इसका मतलब यह है कि मैं इस तरह एक मार्ग नहीं हो सकता: जहां आईडी जैसे किसी भी स्ट्रिंग हो सकती है
{controller}/{action}/{id}
...
Catalog/Product/Bin
तो, बजाय इस सुरक्षा उपाय को अक्षम करने का मैं मार्ग बदलने के लिए, आईडी से पहले एक प्रत्यय का उपयोग कर तैयार हूँ, इस तरह:
{controller}/{action}_{id} // e.g. Catalog/Product_Bin
{controller}/{action}/_{id} // e.g. Catalog/Product/_Bin
लेकिन इन मार्गों अगर काम नहीं करेगा आईडी में नया डिलीमीटर होता है, _ इस मामले में, उदाहरण के लिए
// These URL won't work (I get 404 response)
Catalog/Product_Bin_
Catalog/Product/_Bin_
Catalog/Product/__Bin
क्यों? मुझे नहीं पता, मेरे लिए एक बग की तरह दिखता है। मैं इन मार्गों को कैसे काम कर सकता हूं, जहां आईडी कोई स्ट्रिंग हो सकती है? *,,:
क्या यह कुछ है जो आप [UrlRewite] (http://www.iis.net/download/URLRewrite) के साथ पूरा कर सकते हैं? – R0MANARMY
दिलचस्प है, कैटलॉग/उत्पाद/_bin_ मेरे लिए काम किया, लेकिन कैटलॉग/उत्पाद/__ बिन काम नहीं किया। मैं डेवलपर से यह पता लगाने के लिए जांच कर रहा हूं कि ऐसा क्यों है। मुझे लगता है कि यह भी काम करना चाहिए। – Haacked
क्या यह संभव है कि यह **/0 {id} ** जैसे कुछ करने पर भी होता है ** मुझे अभी यह समस्या है और यह कुछ आईडी के साथ 404 लगता है, लेकिन दूसरों के लिए नहीं ... –