मेरे पास एक एएसपी.नेट एमवीसी पेज है, जहां मैं दोस्ताना यूआरएल दिखाने की कोशिश कर रहा हूं।एएसपी एमवीसी फ्रेंडली यूआरएल और सापेक्ष पथ छवियां
तो, मेरे पास होम कंट्रोलर में एक श्रेणी दृश्य है, जो पृष्ठ की सामग्री प्राप्त करने के लिए एक श्रेणी कुंजी मान स्वीकार करता है।
उदाहरण के लिए: http://localhost/Home/Category/Bikes बाइक सामग्री प्राप्त करता है।
मेरी Global.asax.cs में, मैं इस संभाल करने के लिए निम्नलिखित है:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Category",
"{controller}/{action}/{categoryKey}",
new { controller = "Home", action = "Category", categoryKey = "" });
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
}
यह सिर्फ ठीक काम करता है, और यह सामग्री हो जाता है, फिर भी, मैं एक सामग्री प्रबंधन प्रणाली से सामग्री हो रही है , आसान संपादन के लिए। आप सामग्री प्रबंधन पर एक छवि जोड़ते हैं तो वह एक रिश्तेदार पथ के साथ छवि कहते हैं: अब
<img src="../AdminUploadContent/bikes.gif" alt="Bikes" />
, अगर मैं गोटो "http://localhost/Home/Category", और कहा कि छवि टैग आधार पृष्ठ पर है, यह ऊपर खींच लेंगे छवि। हालांकि, अगर मुझे "http://localhost/Home/Category/" मिल गया है, या "/ होम/श्रेणी/बाइक" की वास्तविक श्रेणी जोड़ें, तो छवि दिखाई नहीं दे रही है। छवि के गुण "http://localhost/Home/AdminUploadContent/bikes.gif" पर इंगित कर रहे हैं।
क्या कोई भी चीज़ है जो मैं अपने global.aspx.cs फ़ाइल में सापेक्ष पथ को संभालने के लिए रख सकता हूं? यहां तक कि यदि मैं सामग्री प्रबंधन को मैन्युअल रूप से संपादित करने के लिए संपादित करता हूं ../../AdminUploadContent/bikes.gif, यह पहले ../ को बंद कर रहा है, क्योंकि यह कुछ सत्यापन कर रहा है।
मैं asp.net mvc के साथ asp.net वेबफॉर्म idiom मिश्रण करने की अनुशंसा नहीं करता। इस मामले में
– Roman