Aggiunta di un modello (VB)

di Rick Anderson

Questa esercitazione illustra le nozioni di base sulla creazione di un'applicazione Web ASP.NET MVC usando Microsoft Visual Web Developer 2010 Express Service Pack 1, che è una versione gratuita di Microsoft Visual Studio. Prima di iniziare, assicurarsi di aver installato i prerequisiti elencati di seguito. È possibile installarli facendo clic sul collegamento seguente: Programma di installazione piattaforma Web. In alternativa, è possibile installare singolarmente i prerequisiti usando i collegamenti seguenti:

Se si usa Visual Studio 2010 anziché Visual Web Developer 2010, installare i prerequisiti facendo clic sul collegamento seguente: Prerequisiti di Visual Studio 2010.

Un progetto Visual Web Developer con VB.NET codice sorgente è disponibile per accompagnare questo argomento. Scaricare la versione VB.NET. Se si preferisce C#, passare alla versione C# di questa esercitazione.

Aggiunta di un modello

In questa sezione verranno aggiunte alcune classi per la gestione dei film in un database. Queste classi saranno la parte "modello" dell'applicazione 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.

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.

Screenshot che mostra la finestra Esplora soluzioni. L'opzione Aggiungi è selezionata nel menu Modelli con il pulsante destro del mouse e classe è selezionata nel menu secondario.

Assegnare un nome alla classe "Movie".

Aggiungere le cinque proprietà seguenti alla Movie classe:

Public Class Movie 
        Public Property ID() As Integer 
        Public Property Title() As String 
        Public Property ReleaseDate() As Date 
        Public Property Genre() As String 
        Public Property Price() As Decimal 
End Class

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.

Nello stesso file aggiungere la classe seguente MovieDBContext :

Public Class MovieDBContext
    Inherits DbContext
    Public Property Movies() As DbSet(Of Movie)
End Class

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 altre informazioni su DbContext e DbSet, vedere Miglioramenti della produttività per Entity Framework.

Per poter fare riferimento DbContext a e DbSet, è necessario aggiungere l'istruzione seguente imports nella parte superiore del file:

Imports System.Data.Entity

Il file Movie.vb completo è illustrato di seguito.

Imports System.Data.Entity

Public Class Movie
        Public Property ID() As Integer
        Public Property Title() As String
        Public Property ReleaseDate() As Date
        Public Property Genre() As String
        Public Property Price() As Decimal
End Class

Public Class MovieDBContext
    Inherits DbContext
    Public Property Movies() As DbSet(Of Movie)
End Class

Creazione di una stringa di connessione e utilizzo di SQL Server Compact

La MovieDBContext classe creata gestisce l'attività di connessione al database e al mapping Movie di oggetti ai record di database. Una domanda che si potrebbe porre, tuttavia, è come specificare il database a cui si connetterà. A tale scopo, aggiungere informazioni di connessione nel file diWeb.config dell'applicazione.

Aprire il file radice dell'applicazioneWeb.config . Non il file Web.config nella cartella Views . L'immagine seguente mostra entrambi i fileWeb.config ; aprire il file Web.config cerchiato in rosso.

Screenshot che mostra la finestra Esplora soluzioni. La configurazione del punto Web è cerchiata in rosso.

Aggiungere la stringa di connessione seguente all'elemento <connectionStrings> nel file Web.config .

<add name="MovieDBContext" 
         connectionString="Data Source=|DataDirectory|Movies.sdf" 
         providerName="System.Data.SqlServerCe.4.0"/>

Nell'esempio seguente viene illustrata una parte del file Web.config con la nuova stringa di connessione aggiunta:

<configuration>
  <connectionStrings>
    <add name="MovieDBContext" 
         connectionString="Data Source=|DataDirectory|Movies.sdf" 
         providerName="System.Data.SqlServerCe.4.0"/>
    <add name="ApplicationServices"
         connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
         providerName="System.Data.SqlClient" />
  </connectionStrings>

Questa piccola quantità di codice e XML è tutto ciò che è necessario scrivere per rappresentare e archiviare i dati del film in un database.

Successivamente, si creerà una nuova MoviesController classe che è possibile usare per visualizzare i dati del film e consentire agli utenti di creare nuovi elenchi di film.