Programmering

Introduktion til ASP.Net Core MVC framework

ASP.Net Core MVC er en platform, der udvikler webapplikationer på tværs af platforme, der udnytter fordelene ved ASP.Net Core-runtime og samtidig giver dig mulighed for at designe applikationer, der kan testes og vedligeholdes, og som kan udvikles og distribueres over flere platforme. Bemærk, at MVC Core ikke har brug for IIS til hosting - du kan være vært for MVC Core-applikationer i Kestrel, eller de kan endda være selvhostede. ASP.Net MVC Core er open source, har indbygget understøttelse af afhængighedsinjektion og kan udvides. Bemærk, at MVC-rammen hjælper dig med at isolere bekymringerne i dine applikationer og opbygge applikationer, der er lettere at teste og vedligeholde.

De fremtrædende funktioner i MVC Core inkluderer routing, modelbinding, modelvalidering, afhængighedsinjektion, filtre, områder, web-API'er, stærkt indtastede visninger, taghjælpere og se komponenter. Lad os nu se kort på hver af disse funktioner. Vi gennemgår hver af disse i senere indlæg her.

Routing

Routing-motoren i ASP.Net Core MVC er bygget oven på ASP.Net Core-routing-motoren. Du har nu understøttelse af routing på to forskellige måder - den konventionbaserede routing-funktion og den attribut-driven routing-funktion. I førstnævnte kan du definere URL-formater til din applikation globalt som vist nedenfor.

ruter.MapRoute (navn: "Standard", skabelon: "{controller = Home} / {action = Index} / {id?}");

Attributrute giver dig mulighed for at specificere routingoplysninger ved at anvende attributter på dine controllere og handlingsmetoder som vist i kodestykket nedenfor.

[Rute ("API / kunder")]

offentlig klasse CustomersController: Controller

{

[HttpGet ("{id}")]

offentlig IActionResult GetCustomer (int id)

  {

// Skriv din sædvanlige kode her

  }

}

Modelvalidering

Du kan dekorere dine modelobjekter ved hjælp af attributter til at udføre modelvalidering i ASP.Net MVC-kode. Følgende kodestykke illustrerer, hvordan du kan udnytte dataannoteringer til at dekorere din model.

ved hjælp af System.ComponentModel.DataAnnotations;

offentlig klasse CustomerViewModel

{

[Påkrævet]

[Fornavn]

offentlig streng Fornavn {get; sæt; }

[Påkrævet]

[Efternavn]

public string LastName {get; sæt; }

}

Bemærk, at valideringsattributterne kontrolleres både på klientsiden og også på serversiden.

public async Task SaveData (CustomerViewModel model, string returnUrl = null)

{

hvis (ModelState.IsValid)

    {

// Skriv din kode her for at gemme data

    }

// Der er sket en fejl

return Vis (model);

}

Afhængighedsinjektion

Da ASP.Net MVC Core er bygget oven på ASP.Net Core, arver den også afhængighedsindsprøjtningsfunktionerne i ASP.Net Core. Støtte til afhængighedsinjektion og servicelokatorrammen er indbygget i ASP.Net Core. Der er fire tilstande, hvor en type kan injiceres. Disse inkluderer: Singleton, Scoped, Transient og Instance.

ASP.Net MVC Core giver dig mulighed for at injicere afhængigheder ved hjælp af konstruktører til controller-klasser. Du kan også indsprøjte afhængigheder i visningsfilerne ved hjælp af @inject-direktivet.

Du kan registrere en type i ConfigureServices-metoden i Startup.cs-filen som vist nedenfor.

offentlig ugyldighed ConfigureServices (IServiceCollection-tjenester)

{

services.AddMvc ();

services.AddSingleton ();

}

Når typen er registreret med rammen, kan du injicere typen ved hjælp af konstruktøren af ​​en controller som vist nedenfor.

offentlig klasse CustomerController: Controller

{

privat ILoggingService logger;

offentlig CustomerController (ILoggingService logger)

   {

this.logger = logger;

   }

}

Stærkt indtastede visninger

ASP.Net Core MVC yder support til stærkt indtastede visninger. Så dine barbermaskiner kan også indtastes stærkt.

@model I-nummererbar

    @foreach (kunde c i model)

        {

           

  • @ c.FirstName
  •        

  • @ c.LastName
  •     }

    Support til tag-hjælpere

    Taghjælpere bruges til at muliggøre oprettelse og gengivelse af HTML-elementer på serversiden. Du har mange indbyggede Tag-hjælpere i ASP.Net Core MVC. Du kan også oprette din brugerdefinerede Tag-hjælper. De indbyggede Tag-hjælpere kan bruges til at oprette formularer, indlæse aktiver osv.

    Support til Web API

    ASP.Net MVC Core giver fremragende support til opbygning af lette tjenester ved hjælp af Web API, der kan køre via HTTP. ASP.Net Web API er en ramme, som du kan bruge til at opbygge lette webtjenester, der bruger HTTP som protokol. Web API giver indbygget support til indholdsforhandling, formatering og deling af ressourcer på tværs af oprindelse (CORS).

    Cloud Ready

    Med MVC Core kan du nu oprette og konfigurere dine applikationer til at være sky-klar. Opbygning og implementering af applikation til skyen er nu problemfri med fremragende support til miljøbaseret konfiguration. I det væsentlige har du nu understøttelse af et sky-klar miljøbaseret konfigurationssystem. Dette hjælper med at spare den tid, du ellers skal spilde på grund af fejl, der opstår under implementeringen.

    Jeg vil diskutere, hvordan vi kan opbygge applikationer ved hjælp af MVC Core-rammen i et senere indlæg her.

Copyright verticalshadows.com 2021