logo

ניתוב MVC של ASP.NET

ב-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.

אם נזין במפורש שמות בקר ופעולות בשורת הכתובת, זה יפנה לאותה פעולה. ה localhost:52174/Home/Index יפיק את אותו פלט לדפדפן.

ניתוב ASP 2

כעת, בואו ניצור בקר חדש ונקבע אותו לקובץ המסלול. קליק ימני על בקר תיקיה ובחר הוסף ואז בקר. זה יקפוץ חלון. בחר בקר ריק כפי שעשינו בצילום מסך.

ניתוב ASP 3

לבקר זה יש קוד מקור כלשהו, ​​החלף אותו עם הקוד הבא.

// StudentsController.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 ו localhost:52174/סטודנטים/אינדקס

מכיוון שמודול המסלול של מסגרת MVC ממפה את כתובת האתר של הדפדפן לקובץ RouteConfig של הפרויקט.

תְפוּקָה:

סעיפי sql

ניתוב ASP 4

זה זהה לעיל אפילו שהזנו שמות של בקר ופעולות במפורש.

ניתוב ASP 5