Aggiunta di un nuovo modello
Nota
Una versione aggiornata di questa esercitazione è disponibile qui usando la versione più recente di Visual Studio. La nuova esercitazione usa ASP.NET Core MVC, che fornisce molti miglioramenti su questa esercitazione.
Questa esercitazione illustra ASP.NET Core MVC con i controller e le viste. Razor Pages è una nuova alternativa in ASP.NET Core, un modello di programmazione basato su pagine che semplifica la creazione dell'interfaccia utente Web e una maggiore produttività. È consigliabile provare l'esercitazione sulle pagine Razor prima della versione MVC. L'esercitazione sulle pagine Razor:
- È più semplice da seguire.
- Riguarda più funzionalità.
- È l'approccio preferito per lo sviluppo di nuove app.
In questa sezione verranno aggiunte alcune classi per la gestione dei film in un database. Queste classi saranno la parte "modello" dell'app MVC ASP.NET.
Si userà una tecnologia di accesso ai dati di .NET Framework nota come Entity Framework per definire e usare queste classi di modello. Entity Framework (spesso definito EF) supporta un paradigma di sviluppo denominato Code First. Code First consente di creare oggetti modello scrivendo classi semplici. Queste sono note anche come classi POCO, dagli oggetti CLR "plain-old". È quindi possibile creare il database a comparsa dalle classi, che consente un flusso di lavoro di sviluppo molto pulito e rapido. Se è necessario creare prima il database, è comunque possibile seguire questa esercitazione per informazioni sullo sviluppo di app MVC e EF. È quindi possibile seguire Tom Fizmakens ASP.NET esercitazione su Scaffolding , che illustra il primo approccio al database.
Aggiunta di classi di modello
In Esplora soluzioni fare clic con il pulsante destro del mouse sulla cartella Modelli, scegliere Aggiungi e quindi selezionare Classe.
Immettere il nome della classe "Movie".
Aggiungere le cinque proprietà seguenti alla Movie
classe:
using System;
namespace MvcMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
}
Verrà usata la Movie
classe per rappresentare i film in un database. Ogni istanza di un Movie
oggetto corrisponde a una riga all'interno di una tabella di database e ogni proprietà della Movie
classe verrà mappata a una colonna nella tabella.
Nota: per usare System.Data.Entity e la classe correlata, è necessario installare il pacchetto NuGet di Entity Framework. Per altre istruzioni, seguire il collegamento.
Nello stesso file aggiungere la classe seguente MovieDBContext
:
using System;
using System.Data.Entity;
namespace MvcMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
}
La MovieDBContext
classe rappresenta il contesto del database del film entity Framework, che gestisce il recupero, l'archiviazione e l'aggiornamento Movie
delle istanze della classe in un database. Deriva MovieDBContext
dalla DbContext
classe di base fornita da Entity Framework.
Per poter fare riferimento DbContext
a e DbSet
, è necessario aggiungere l'istruzione seguente using
nella parte superiore del file:
using System.Data.Entity;
A tale scopo, è possibile aggiungere manualmente l'istruzione using oppure passare il puntatore del mouse sulle righe rosse, fare clic e fare clic Show potential fixes
su using System.Data.Entity;
Nota: sono state rimosse diverse istruzioni inutilizzate using
. Visual Studio mostrerà le dipendenze inutilizzate come grigio. È possibile rimuovere le dipendenze inutilizzate passando il puntatore del mouse sulle dipendenze grigie, fare clic e fare clic Show potential fixes
su Rimuovi usi inutilizzati.
È stato infine aggiunto un modello (M in MVC). Nella sezione successiva si userà la stringa di connessione del database.