Quando e perché usare Razor Pages

Completato

In questa unità si apprenderà quando e perché usare Razor Pages per l'app ASP.NET Core.

I vantaggi di Razor Pages

Razor Pages è un modello di programmazione sul lato server incentrato sulle pagine per la creazione di interfacce utente Web con ASP.NET Core. I vantaggi includono:

  • Configurazione semplice per le app Web dinamiche con HTML, CSS e C#.
  • File organizzati in base alla funzionalità per semplificare la manutenzione.
  • Combina il markup con il codice C# lato server usando la sintassi Razor.

Razor Pages utilizza Razor per l'incorporamento di codice basato sul server nelle pagine Web. La sintassi Razor combina HTML e C# per definire la logica di rendering dinamica. Ciò significa che è possibile usare variabili e metodi C# all'interno del markup HTML per generare contenuti Web dinamici nel server in fase di esecuzione. È importante comprendere che Razor Pages non sostituisce HTML, CSS o JavaScript, ma combina queste tecnologie per creare contenuto Web dinamico.

Separazione delle problematiche

Razor Pages applica la separazione delle problematiche con una classe C# PageModel, incapsulando le proprietà dei dati e le operazioni logiche relative solo alla pagina Razor e definendo i gestori di pagine per le richieste HTTP. La classe PageModel è una classe parziale generata automaticamente dal modello di progetto ASP.NET Core. La classe PageModel si trova nella cartella Pages e prende il nome dalla pagina Razor. Ad esempio, la classe PageModel per la pagina Razor Index.cshtml viene denominata IndexModel.cs.

Quando usare Razor Pages

Usare Razor Pages nell'app ASP.NET Core quando:

  • Si vuole generare un'interfaccia utente Web dinamica.
  • Preferire un approccio incentrato sulla pagina.
  • Si vuole ridurre la duplicazione con visualizzazioni parziali.

Razor Pages semplifica l'organizzazione delle pagine ASP.NET Core mantenendo le pagine correlate e la relativa logica insieme nel proprio spazio dei nomi e nella propria directory.

Nota

ASP.NET Core supporta anche il modello MVC (Model-View-Controller) per la creazione di app Web. Usare MVC quando si preferisce una netta separazione tra modello, visualizzazione e controller. Nella stessa app possono coesistere sia Razor Pages che MVC. MVC non rientra nell'ambito di questo modulo.

Nell'unità successiva verrà illustrata un'app Razor Pages.

Verificare le conoscenze

1.

Quale delle affermazioni seguenti relative a Razor Pages è vera?