Håndtering av feil og unntak med ASP.NET MVC

En webapplikasjon vil ha mange kvaliteter, men det er en mørk side som vi må være klar over, og det er at den vil ha mange feil, selv om vi kan ta alle forhåndsregler og gjøre alle enhetstester, vil det alltid være tilfeller og situasjoner som vi ikke så. som kan eksplodere i et produksjonsmiljø.

Når en dødelig feil utløses, er det siste vi vil at brukeren skal se feilmeldingen den gir oss. ASP.NET MVC, derfor må vi lære å håndtere feil Y unntak slik at vi kan veilede søknaden vår om hvordan vi løser problemet.

Håndterer en feil i ASP.NET MVC


Når vi jobber med forespørsler HTTP og med brukerinngang kan noe gå galt, og det er vår jobb å prøve å minimere dette, selv om vi ikke vil kunne vite alle tilfellene, hvis vi kan lage en komponent som på en bestemt måte adresserer feilene vi ikke kjenner .

Rammeverket lar oss etablere egendefinerte feilsider hvis vi aktiverer det tilsvarende alternativet, altså hvis det oppstår en feil eller unntak som vi ikke håndterer, kan vi vise en side som er mindre dødelig enn den klassiske ASP.NET MVC som vi kan se på følgende bilde:

Selv om vi kan avvise meldingen, er det noe bekymringsfullt, hvis vi ser kildekoden til hvor feilen skjedde, kan dette føre til sikkerhetshull, så det er viktig at denne siden aldri blir sett i produksjonen.

Egendefinert feilside


Selv om det ikke er å ha feil er den ideelle tilstanden, men i seg selv er det en utopi, så vi må leve med problematikken og at de alltid vil oppstå, i ASP.NET MVC vi kan ha tre måter å håndtere disse på.

De først er å vise standardsiden som vi så i det forrige bildet til enhver tid, så når en feil oppstår, vil vi se den, med alle risikoene dette medfører. De sekund status viser bare vår egendefinerte feilside, dette hjelper oss med å ikke la applikasjonskildekoden vår vises.

Og til slutt tredje status og en av de mest nyttige, at bare den egendefinerte feilsiden blir sett når appen er tilgjengelig fra en ekstern adresse, hjelper denne siste modusen oss med feilsøking siden hvis vi kjører programmet og navigerer det inn lokal vert vi vil se standardsiden for feilene, og dermed hjelper vi hverandre med alle detaljene, men hvis det er en klient som kobler seg til fra en annen maskin, vil du bare se den tilpassede feilen.

Bruk tilstanderFor å bruke disse tre statene trenger vi bare å endre direktivet customErrors, med verdiene av, på og Bare Remote For hver av statene beskrevet henholdsvis ovenfor, kan vi plassere den egendefinerte siden med feilene.

La oss se på det følgende bildet en eksempelkode på hvordan du justerer dette direktivet om konfigurasjonsfilen:

Vi ser at vi kan sette spesifikke sider til kjente feil som ikke funnet eller 404, vi kan også gjøre det med 500 -feilen og andre koder, med dette fullfører vi denne opplæringen som vi har lært litt den grunnleggende måten å håndtere feil på i ASP.NET MVC.

Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave