logo

توجيه ASP.NET MVC

في MVC، التوجيه هو عملية تعيين طلب المتصفح لإجراء وحدة التحكم وإرجاع الاستجابة مرة أخرى. يحتوي كل تطبيق MVC على توجيه افتراضي للتوجيه الافتراضي HomeController . يمكننا تعيين توجيه مخصص لوحدة التحكم التي تم إنشاؤها حديثًا.

ال RouteConfig.cs يتم استخدام الملف لتعيين التوجيه للتطبيق. في البداية كان يحتوي على الكود التالي.

// RouteConfig.cs

 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Routing; namespace MvcApplicationDemo { public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute('{resource}.axd/{*pathInfo}'); routes.MapRoute( name: 'Default', url: '{controller}/{action}/{id}', defaults: new { controller = 'Home', action = 'Index', id = UrlParameter.Optional } ); } } } 

وفقًا لملف الإعداد هذا، سيتم التعامل مع إجراء الفهرس الخاص بوحدة التحكم الرئيسية على أنه افتراضي. لأول مرة، عند تشغيل التطبيق فإنه ينتج الإخراج التالي.

توجيه ASP 1

إذا نظرنا إلى شريط العناوين، فهو يحتوي فقط المضيف المحلي: 52174 . لا توجد وحدة تحكم ويتم تحديد الإجراء لأن جهاز التوجيه MVC يقوم بتعيين وحدة التحكم من RouteConfig.cs.

إذا أدخلنا أسماء وحدات التحكم والإجراء بشكل صريح في شريط العناوين، فسيتم إعادة التوجيه إلى نفس الإجراء. ال المضيف المحلي:52174/الصفحة الرئيسية/الفهرس سوف تنتج نفس الإخراج إلى المتصفح.

توجيه ASP 2

الآن، لنقم بإنشاء وحدة تحكم جديدة وتكوينها لملف المسار. انقر بزر الماوس الأيمن على مراقب المجلد وحدد إضافة ثم وحدة التحكم. وسوف يطفو على السطح نافذة. حدد وحدة تحكم فارغة كما فعلنا في لقطة الشاشة.

توجيه أسب 3

تحتوي وحدة التحكم هذه على بعض التعليمات البرمجية المصدر، قم بتجاوز ذلك باستخدام التعليمات البرمجية التالية.

// StudentController.cs

 using System.Web.Mvc; namespace MvcApplicationDemo.Controllers { public class StudentsController : Controller { public ContentResult Index() { return Content('This is default student page'); } } } 

لتكوين وحدة التحكم هذه في ملف المسار، قمنا بإجراء بعض التغييرات في RouteConfig.cs ملف. ويرد رمز أدناه.

// RouteConfig.cs

 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using System.Web.Routing; namespace MvcApplicationDemo { public class RouteConfig { public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute('{resource}.axd/{*pathInfo}'); routes.MapRoute( name: 'Students', url: '{controller}/{action}/{id}', defaults: new { controller = 'Students', action = 'Index', id = UrlParameter.Optional } ); } } } 

ينتج هذا التطبيق نفس الإخراج لـ المضيف المحلي: 52174 و المضيف المحلي:52174/الطلاب/Index

لأن وحدة المسار لإطار عمل MVC تقوم بتعيين عنوان URL للمتصفح إلى ملف RouteConfig الخاص بالمشروع.

انتاج:

عمر فيكي كوشال

توجيه ASP 4

هذا هو نفس ما ورد أعلاه حتى أننا أدخلنا أسماء وحدات التحكم والإجراءات بشكل صريح.

توجيه ASP 5