Intro to ASP.NET MVC & Understanding MVC Architecture

Video tutorial gratuito di Web Academy by Harsha Vardhan
MS Certified | 1.5M+ Happy Students
12 corsi
164.640 studenti
Segui il corso completo per saperne di più
Asp.Net MVC 5 - Ultimate Guide - In depth & Sample Project
Asp.Net Mvc, Asp.Net Core Mvc, Repository Pattern, Web Api, Asp.Net Identity, Entity Framework
21:43:50 di video on-demand • Ultimo aggiornamento: Luglio 2025
Confidently speak about MVC Architecture
Crack Asp .Net Mvc job interviews easier
Solve most common bugs and issues in Asp .Net Mvc applications
Working with Razor view engine, code like Pro
Secure Angular applications using the most-recommended - Asp .Net Identity
Interact with server using AJAX and build RESTful Services using Web API
Create real-world apps using Asp .Net Mvc 5
Create Asp .Net Mvc App Folder Structure with industry best practices like a Pro
Italiano [Auto]
Cerchiamo di capire cosa è l'Asp. Net MVC e i suoi vantaggi. In questa lezione spiegherò anche cosa sono Modello, Vista e Controllore e come interagiscono. Asp. Net MVC è un "framework per applicazioni Web", che offre un potente modello basato sul modo di costruire applicazioni Web dinamiche, che consente una separazione netta delle preoccupazioni e che dà il pieno controllo del markup. Questa definizione sembra davvero interessante; ma cosa significa esattamente? In genere un programma lato server riceve una richiesta dal client, esegue una logica di business e interagisce con il database e infine invia la risposta al browser. In genere non è possibile creare subito un'applicazione web basata su un unico linguaggio di programmazione. È sempre necessario un "Web Application Framework" per creare applicazioni web. Asp. Net è una "piattaforma o framework per applicazioni web" per creare applicazioni web dinamiche che interagiscono continuamente con il server, scambiando molte informazioni tra client e sever. In Asp. Net, le applicazioni web tradizionali venivano costruite utilizzando "Asp. Net WebForms Framework", che fa parte di Asp. netto. In Asp. net WebForms, gli sviluppatori utilizzano "controlli lato server", post-back, ciclo di vita della pagina ecc. I principali problemi di Asp. Net Web Forms sono due. Il primo è "nessuna separazione netta delle preoccupazioni"; significa che non è possibile separare il file ASPX da ASPX. File CS. Non è possibile svilupparli o testarli in modo indipendente senza avere a disposizione l'uno l'altro. Il secondo è: a causa dei controlli lato server, dei postback e del ciclo di vita della pagina, il server è molto gravato dall'elaborazione di molti controlli per ogni richiesta. Quindi alla fine si otterrà una prestazione più lenta. Per superare questi due problemi, Asp. Il framework Net MVC è stato introdotto da Microsoft nel 2009. Come l'ASP. NET MVC risolve questi problemi? Asp. net MVC permette di costruire applicazioni web basate sull'architettura MVC. Ciò significa che si sta dividendo il codice dell'applicazione in tre parti principali, chiamate Modello, Vista e Controllore. Il più grande vantaggio di MVC è la "separazione netta delle preoccupazioni". Ciò significa che è possibile sviluppare e testare il modello, la vista e il controllore in modo indipendente, senza doverli toccare. Così diversi team della vostra organizzazione possono svilupparli in modo indipendente. Il secondo problema di Asp. net Web Forms è una prestazione più lenta dovuta ai controlli del server e al ciclo di vita della pagina. In ASP. net MVC, i controlli del server vengono eliminati. Il design di MVC non richiede controlli sul server. Quindi i concetti correlati, come il ciclo di vita della pagina, lo stato della vista, ecc. non sono richiesti. Per questo motivo è stato rimosso. L'ASP. net MVC offre un modo pulito e chiaro di sviluppare applicazioni web dinamiche basate sulla natura stateless del protocollo HTTP. L'ASP. NET MVC è una parte di Asp. Netto. Non è isolato da ASP. netto. Quindi ASP. net ha due parti principali: ASP. net Web Forms e ASP. NET MVC. Naturalmente, abbiamo anche ASP. net Web API; ma ne parleremo più avanti in questo corso. ASP. NET MVC è un'alternativa ad Asp. Net Web Forms. Non è costruito sulla base di ASP. net Web Forms. È stato introdotto nel 2009; e la versione attuale di MVC è la 5. 2. 5. Che cos'è l'MVC? MVC è un modello architettonico che impone di scrivere il codice dell'applicazione come composizione di tre parti principali. Il primo è il modello. Il modello è una classe che contiene la "struttura dei dati" e la "logica aziendale". Ad esempio, si sta sviluppando un'applicazione di commercio elettronico e in una pagina si vuole mostrare all'utente un elenco di prodotti. Quali sono i campi che si desidera visualizzare? Ad esempio, l'id del prodotto, il nome del prodotto, il prezzo, gli sconti, ecc. È necessario creare una classe C# con queste proprietà; questa classe è chiamata Data Structure Model. Questo è un tipo di modello. È necessario creare un'altra classe C# che contenga la logica aziendale, che comprende il codice di programmazione che verifica le regole aziendali, chiama il livello di accesso ai dati per ottenere i dati dal database, li convalida, esegue calcoli ecc. Questa classe è chiamata Business Logic Model; è un secondo tipo di modello. Il secondo è la vista. Contiene la logica di presentazione per visualizzare i dati del modello. Quindi la vista accede alle proprietà del modello; i. e. in questo caso, il "modello di struttura dati". Ciò significa che la vista legge le proprietà del modello dal modello della struttura dati e rende tali valori nel risultato HTML. La vista contiene HTML, CSS, JavaScript e C#. per rendere l'output. Il terzo è il Controllore. Il controllore definisce il flusso di esecuzione. Ciò significa che nell'architettura MVC, la Vista o il Modello non possono essere eseguiti alla ricezione di una richiesta. Quando viene inviata la richiesta, prima viene eseguito il controllore; poi il controllore chiama il modello; ciò significa che il controllore crea un oggetto modello; quindi il controllore chiama la vista e il controllore passa l'oggetto modello alla vista. Quindi la vista legge le proprietà necessarie dall'oggetto modello. Il punto più importante è che mentre la vista legge le proprietà dal modello, il controllore non viene coinvolto. Ad esempio, la vista Prodotto legge le proprietà del modello Prodotto, come ProductID, ProductName, Price ecc. Ma mentre la vista legge le proprietà del modello, il controllore non viene coinvolto. Possiamo quindi dire che una "vista legge il modello". Quindi i tre punti importanti di MVC sono: 1. Il controllore chiama il modello. 2. Il controllore chiama la vista e passa l'oggetto Modello alla vista. 3. La vista chiama il modello. Quali sono i vantaggi di ASP. NET MVC? Supporta la "separazione netta delle preoccupazioni". Ciò significa che possiamo scomporre un'applicazione di grandi dimensioni in piccole unità, come il livello dei dati, il livello dei servizi, il livello della presentazione e il livello del controllore, consentendo loro di essere sviluppate in modo indipendente e parallelo. Per esempio, uno sviluppatore sta sviluppando il codice per l'accesso ai dati; allo stesso tempo si sta sviluppando il controllore; e allo stesso tempo, un altro sviluppatore sta sviluppando la vista; e tutto questo avviene in parallelo. In questo modo è possibile accelerare lo sviluppo dell'applicazione e renderlo più veloce. Supporta i test unitari. Il test delle unità è un concetto che consiste nel testare una parte minima del codice in modo indipendente, sia che restituisca i risultati attesi sia che non li restituisca. È possibile testare efficacemente i controllori e i livelli di business in ASP. NET MVC. Supporta la Dependency Injection. L'iniezione di dipendenze è un concetto di caricamento di oggetti di business nel controllore in modo dinamico, anziché in fase di compilazione. Il controllore ha una variabile di riferimento che contiene il riferimento all'oggetto della logica di business. Si possono avere più oggetti di logica aziendale; uno si occupa dell'archiviazione dei file e l'altro dell'archiviazione del database. Ma il controllore non sa quale oggetto di logica aziendale sarà caricato nella variabile di riferimento. Si configura nel file di configurazione; quindi il framework crea un oggetto business e inietta lo stesso oggetto business nel riferimento disponibile che è presente nel controllore. Quindi, il caricamento dell'oggetto business nella variabile di riferimento, che è presente nel controllore in fase di esecuzione, è chiamato Dependency Injection. Supporta prestazioni più veloci di ASP. net Web Forms. ASP. net Web Forms ha problemi di prestazioni lente, a causa del pesante ciclo di vita della pagina, dello stato della vista e dei postback. Ciò significa che per ogni piccola modifica è necessario aggiornare l'intera pagina. Ma in MVC non si aggiorna mai la pagina; ciò significa che in MVC non c'è PostBack, non c'è View State, non ci sono controlli lato server; quindi si ottengono le migliori prestazioni del server. Ripassiamo ciò che abbiamo capito in questa lezione. ASP. net MVC è un framework per applicazioni web, costruito sulla base dell'architettura MVC, che fa parte di ASP. NET; e supporta la separazione netta delle preoccupazioni e il pieno controllo sul markup. Il modello contiene la struttura dei dati e la logica di business; la vista contiene la logica di presentazione; il controllore definisce il flusso di esecuzione; il controllore passa i dati essenziali alla vista; ciò significa che il controllore passa l'oggetto modello alla vista. Si tratta di un'architettura MVC. Vi ringrazio e vi do appuntamento alla prossima lezione.