.NET التوجيه المخصصة MVC
-
06-07-2019 - |
سؤال
وكنت أتساءل إذا كان بإمكاني إنشاء خريطة التوجيه مع واحد أكثر من مستوى أعلى من التحكم. وتشمل التوجيه نموذجي "/ تحكم / العمل / المعرف". ما أنا أبحث عن شيء مثل "قسم / وحدة تحكم / العمل / المعرف" أو "تحكم / القسم / العمل / المعرف". كيف يمكنني أن أفعل هذا؟
المحلول
ولا توجد مشكلة. مجرد خلق مسار URL منها، على سبيل المثال
وpath/to/my/application/{controller}/{action}/{id}
... وتوريد وحدة تحكم افتراضية والعمل على النحو المعتاد.
وهناك مثال ملموس على ذلك
context.MapRoute(
"Admin_default",
"admin/{controller}/{action}/{id}",
new { controller = "AdminHome", action = "Index", id = "" }
);
وهذا سوف الخريطة، على سبيل المثال، عناوين المواقع التالية:
/admin/ => AdminHomeController.Index
/admin/adminhome/ => AdminHomeController.Index
/admin/other/ => OtherController.Index
/admin/statistics/view/50 => StatisticsController.View(50)
ملحوظة، على الرغم من أنه إذا كان لديك أيضا مسارا افتراضيا، على سبيل المثال مثل هذا:
context.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
... ثم طرق عمل تحكم في توجيه الادارية قد يكون الوصول إليها عبر هذا الطريق أيضا. استخدم URL التوجيه المصحح للمعرفة على وجه اليقين .