logo

ASP.NET MVC -reititys

MVC:ssä reititys on prosessi, jossa selainpyyntö kartoitetaan ohjaimen toimintoon ja palautetaan vastaus. Jokaisella MVC-sovelluksella on oletusreititys HomeController . Voimme asettaa mukautetun reitityksen juuri luodulle ohjaimelle.

The RouteConfig.cs tiedostoa käytetään määrittämään sovelluksen reititys. Aluksi se sisältää seuraavan koodin.

// 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 } ); } } } 

Tämän asennustiedoston mukaan kotiohjaimen hakemistotoimintoa käsitellään oletuksena. Ensimmäisellä kerralla, kun sovellus suoritetaan, se tuottaa seuraavan tulosteen.

ASP-reititys 1

Jos katsomme osoitepalkkia, se sisältää vain paikallinen isäntä: 52174 . Ohjainta ei ole ja toiminto on määritetty, koska MVC-reititin kartoittaa ohjaimen kohteesta RouteConfig.cs.

Jos annamme nimenomaisesti ohjaimen ja toimintojen nimet osoitepalkkiin, se ohjaa samaan toimintoon. The localhost:52174/Home/Index tuottaa saman tulosteen selaimeen.

ASP-reititys 2

Luodaan nyt uusi ohjain ja määritetään se reittitiedostoon. Napsauta hiiren kakkospainikkeella Ohjain kansio ja valitse lisää ja sitten ohjain. Se avaa ikkunan. valitse tyhjä ohjain kuten teimme kuvakaappauksessa.

ASP-reititys 3

Tällä ohjaimella on lähdekoodia, ohita tämä seuraavalla koodilla.

// StudentsController.cs

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

Tämän ohjaimen konfiguroimiseksi reittitiedostossa olemme tehneet joitain muutoksia RouteConfig.cs tiedosto. Koodi on annettu alla.

// 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 } ); } } } 

Tämä sovellus tuottaa saman tulosteen paikallinen isäntä: 52174 ja localhost:52174/Students/Index

Koska MVC-kehyksen reittimoduuli yhdistää selaimen URL-osoitteen projektin RouteConfig-tiedostoon.

Lähtö:

javascript silmukalle

ASP-reititys 4

Tämä on sama kuin yllä, vaikka olemme syöttäneet ohjaimen ja toimintojen nimet nimenomaisesti.

ASP-reititys 5