新增模型 (C#)
作者: Rick Anderson
本教學課程將教導您使用 Microsoft Visual Web Developer 2010 Express Service Pack 1 建置 ASP.NET MVC Web 應用程式的基本概念,這是 Microsoft Visual Studio 的免費版本。 開始之前,請確定您已安裝下列必要條件。 您可以按一下下列連結來安裝所有元件: Web Platform Installer。 或者,您可以使用下列連結個別安裝必要條件:
- Visual Studio Web Developer Express SP1 必要條件
- ASP.NET MVC 3 工具更新
- SQL Server Compact 4.0 (執行時間 + 工具支援)
如果您使用 Visual Studio 2010 而不是 Visual Web Developer 2010,請按一下下列連結來安裝必要條件: Visual Studio 2010 必要條件。
具有 C# 原始程式碼的 Visual Web Developer 專案隨附于本主題中。 下載 C# 版本。 如果您偏好使用 Visual Basic,請切換至本教學 課程的 Visual Basic 版本 。
新增模型
在本節中,您將新增一些類別來管理資料庫中的電影。 這些類別會是 ASP.NET MVC 應用程式的「模型」部分。
您將使用稱為 Entity Framework 的.NET Framework資料存取技術來定義及使用這些模型類別。 Entity Framework (通常稱為 EF) 支援稱為 Code First的開發範例。 Code First 可讓您撰寫簡單的類別來建立模型物件。 (這些也稱為 POCO 類別,來自「純舊 CLR 物件」。) 您可以接著從類別即時建立資料庫,以啟用非常簡潔且快速的開發工作流程。
新增模型類別
在方案總管中,以滑鼠右鍵按一下Models資料夾,選取 [新增],然後選取 [類別]。
將 類別 命名為 「Movie」。
將下列五個屬性新增至 Movie
類別:
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; }
}
我們將使用 Movie
類別來代表資料庫中的電影。 物件的每個實例 Movie
都會對應至資料庫資料表中的資料列,而 類別的每個屬性 Movie
都會對應至資料表中的資料行。
在相同的檔案中,新增下列 MovieDBContext
類別:
public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
類別 MovieDBContext
代表 Entity Framework 電影資料庫內容,可處理資料庫中的擷取、儲存和更新 Movie
類別實例。 MovieDBContext
衍生自 DbContext
Entity Framework 所提供的基類。 如需 和 DbSet
的詳細資訊 DbContext
,請參閱Entity Framework 的生產力改善。
若要能夠參考 DbContext
和 DbSet
,您必須在檔案頂端新增下列 using
語句:
using System.Data.Entity;
完整的 Movie.cs 檔案如下所示。
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; }
}
}
建立連接字串並使用 SQL Server Compact
您建立的 MovieDBContext
類別會處理連接到資料庫的工作,並將物件對應 Movie
至資料庫記錄。 不過,您可能會詢問的一個問題是如何指定要連線的資料庫。 您會在應用程式的 Web.config 檔案中新增連線資訊來執行此動作。
開啟應用程式根 Web.config 檔案。 (不是Views資料夾中的Web.config檔案。) 下圖顯示這兩個Web.config檔案;開啟以紅色圓圈圈Web.config檔案。
將下列連接字串新增至 <connectionStrings>
Web.config 檔案中的 專案。
<add name="MovieDBContext"
connectionString="Data Source=|DataDirectory|Movies.sdf"
providerName="System.Data.SqlServerCe.4.0"/>
下列範例顯示已新增連接字串 Web.config 檔案的一部分:
<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>
這個少量的程式碼和 XML 是您需要撰寫的一切,才能在資料庫中表示和儲存電影資料。
接下來,您將建置新的 MoviesController
類別,讓您可用來顯示電影資料,並允許使用者建立新的電影清單。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應