ورود

View Full Version : سوال: مسیریابی در MVC



pooria2c
جمعه 07 اسفند 1394, 03:47 صبح
سلام دوستان خسته نباشید،
ی سوال فنی درباره مسیریابی که توی سایت های مختلف جوابش و پیدا نکردم!!!!!!!

من دو تا Route با تعریف های زیر دارم!



routes.MapRoute("", "X{controller}/{action}");

routes.MapRoute(
name: "Default",
url: "{controller}/{action}",
defaults: new { controller = "Home", action = "Index" });




حالا موقعی که آدرس http://localhost:1055/XHome/Index رو وارد می کنم، خوب طبیعتاً به controller=Home و action=Index هدایت میشم.(از route اولی داره استفاده می کنه)
حالا یه کنترلر به نام XHome می سازم و موقعی که آدرس http://localhost:1055/X (http://localhost:1055/X)XHome/Index رو وارد می کنم انتظار دارم که به controller=XHome و action=Index مراجعه کنه ولی خطای 404 رو می ده!!! کسی علتش و می دونه (دقت کنید با دو تا X وارد کردم):متفکر::متفکر::متفکر:

ممنون می شم نظراتتون و بشنوم

alitamimi
چهارشنبه 15 اردیبهشت 1395, 15:44 عصر
سلام دوست عزیز شما بایستی به صورت زیر یک rout دیگر تعریف کنید

routes.MapRoute("", "{controller}/{action}");
routes.MapRoute( name: "Default", url: "{controller}/{action}", defaults: new { controller = "x", action = "y" });


پشنهاد میکنم لینک زیر را مشاهده کنید
goo.gl/tbVUv0 (http://goo.gl/tbVUv0)

adameh_bahal
پنج شنبه 16 اردیبهشت 1395, 01:47 صبح
آدرس دوم شما با route اولتون مطابقت داره (x اول رو همون مقدار ثابت در نظر میگیره و دومی رو جزوی از نام کنرلر) و چون route ها به ترتیب اجرا میشن و با همون اولی هم مطابقت پیدا کرده دیگه به route دوم نمیره برای حل مشکل میتونید جای route هاتون رو عوض کنید