# ASP.NET MVC - 模型
為了學習 ASP.NET MVC,我們將構建一個 Internet 應用程序。
第 7 部分:添加數據模型。
## MVC 模型
MVC **模型**包含了除純視圖和控制器邏輯以外的其他所有應用程序邏輯(業務邏輯、驗證邏輯、數據訪問邏輯)。
通過 MVC,模型可以控制并操作應用程序數據。
## Models 文件夾
**Models 文件夾**包含表示應用程序模型的類。
Visual Web Developer 自動創建一個 **AccountModels.cs** 文件,該文件包含用于應用程序安全的模型。
**AccountModels** 包含 **LogOnModel**、**ChangePasswordModel** 和 **RegisterModel**。
## 添加數據庫模型
本教程所需的數據庫模型可以通過以下幾個簡單的步驟來創建:
* 在 **Solution Explorer**窗口中,右擊 **Models** 文件夾,并選擇 **Add** 和 **Class**。
* 將類命名為 **MovieDB.cs**,然后點擊 **Add**。
* 編輯這個類:
```
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data.Entity;
namespace MvcDemo.Models
{
public class MovieDB
{
public int ID { get; set; }
public string Title { get; set; }
public string Director { get; set; }
public DateTime Date { get; set; }
}
public class MovieDBContext : DbContext
{
public DbSet<MovieDB> Movies { get; set; }
}
}
```
**注釋:**
我們特意把模型命名為 "MovieDB"。在上一章中,您已經看到用于數據庫表的 "MovieDBs"(以 s 結尾)。這看起來有點奇怪,不過這種命名慣例能確保模型連接上數據庫表,您必須這么使用。
## 添加數據庫控制器
本教程所需的數據庫控制器可以通過以下幾個簡單的步驟來創建:
* 重建您的項目:選擇 **Debug**,然后從菜單中選擇 **Build MvcDemo**。
* 在 Solution Explorer(解決方案資源管理器)中,右擊 **Controllers** 文件夾,選擇 **Add** 和 **Controller**。
* 設置控制器名稱為 **MoviesController**。
* 選擇模板:**Controller with read/write actions and views, using Entity Framework**
* 選擇模型類:**MovieDB (MvcDemo.Models)**
* 選擇 data context 類:**MovieDBContext (MvcDemo.Models)**
* 選擇視圖 **Razor (CSHTML)**
* 點擊 **Add**
Visual Web Developer 將創建以下文件:
* **Controllers** 文件夾中的 **MoviesController.cs** 文件
* **Views** 文件夾中的 **Movies** 文件夾
## 添加數據庫視圖
在 Movies 文件夾中,會自動創建以下文件:
* Create.cshtml
* Delete.cshtml
* Details.cshtml
* Edit.cshtml
* Index.cshtml
## 祝賀您
祝賀您。您已經向應用程序添加了您的第一個 MVC 數據模型。
現在您可以點擊 "Movies" 標簽頁了。
- C# 基礎
- C# 簡介
- C# 環境
- C# 程序結構
- C# 基本語法
- C# 數據類型
- C# 類型轉換
- C# 變量
- C# 常量
- C# 運算符
- C# 判斷
- C# 循環
- C# 封裝
- C# 方法
- C# 可空類型(Nullable)
- C# 數組(Array)
- C# 字符串(String)
- C# 結構(Struct)
- C# 枚舉(Enum)
- C# 類(Class)
- C# 繼承
- C# 多態性
- C# 運算符重載
- C# 接口(Interface)
- C# 命名空間(Namespace)
- C# 預處理器指令
- C# 正則表達式
- C# 異常處理
- C# 文件的輸入與輸出
- C# 高級
- C# 特性(Attribute)
- C# 反射(Reflection)
- C# 屬性(Property)
- C# 索引器(Indexer)
- C# 委托(Delegate)
- C# 事件(Event)
- C# 集合(Collection)
- C# 泛型(Generic)
- C# 匿名方法
- C# 不安全代碼
- C# 多線程
- ASP.NET 簡介
- Web Pages 教程
- ASP.NET Web Pages - 教程
- ASP.NET Web Pages - 添加 Razor 代碼
- ASP.NET Web Pages - 頁面布局
- ASP.NET Web Pages - 文件夾
- ASP.NET Web Pages - 全局頁面
- ASP.NET Web Pages - HTML 表單
- ASP.NET Web Pages - 對象
- ASP.NET Web Pages - 文件
- ASP.NET Web Pages - 幫助器
- ASP.NET Web Pages - WebGrid 幫助器
- ASP.NET Web Pages - Chart 幫助器
- ASP.NET Web Pages - WebMail 幫助器
- ASP.NET Web Pages - PHP
- ASP.NET Web Pages - 發布網站
- Razor 教程
- ASP.NET Razor - 標記
- ASP.NET Razor - C# 和 VB 代碼語法
- ASP.NET Razor - C# 變量
- ASP.NET Razor - C# 循環和數組
- ASP.NET Razor - C# 邏輯條件
- ASP.NET Razor - VB 變量
- ASP.NET Razor - VB 循環和數組
- ASP.NET Razor - VB 邏輯條件
- MVC 教程
- ASP.NET MVC 教程
- ASP.NET MVC - Internet 應用程序
- ASP.NET MVC - 應用程序文件夾
- ASP.NET MVC - 樣式和布局
- ASP.NET MVC - 控制器
- ASP.NET MVC - 視圖
- ASP.NET MVC - SQL 數據庫
- ASP.NET MVC - 模型
- ASP.NET MVC - 安全
- ASP.NET MVC - HTML 幫助器
- ASP.NET MVC - 發布網站
- Web Forms 教程
- ASP.NET Web Forms - 教程
- ASP.NET Web Forms - HTML 頁面
- ASP.NET Web Forms - 服務器控件
- ASP.NET Web Forms - 事件
- ASP.NET Web Forms - HTML 表單
- ASP.NET Web Forms - 維持 ViewState
- ASP.NET Web Forms - TextBox 控件
- ASP.NET Web Forms - Button 控件
- ASP.NET Web Forms - 數據綁定
- ASP.NET Web Forms - ArrayList 對象
- ASP.NET Web Forms - Hashtable 對象
- ASP.NET Web Forms - SortedList 對象
- ASP.NET Web Forms - XML 文件
- ASP.NET Web Forms - Repeater 控件
- ASP.NET Web Forms - DataList 控件
- ASP.NET Web Forms - 數據庫連接
- ASP.NET Web Forms - 母版頁
- ASP.NET Web Forms - 導航
- Web Pages 參考手冊
- ASP.NET Web Pages - 類
- ASP.NET Web Pages - WebSecurity 對象
- ASP.NET Web Pages - Database 對象
- ASP.NET Web Pages - WebMail 對象
- ASP.NET Web Pages - 更多幫助器
- MVC - 參考手冊
- Web Forms 參考手冊
- ASP.NET Web Forms - HTML 服務器控件
- ASP.NET Web Forms - Web 服務器控件
- ASP.NET Web Forms - Validation 服務器控件
- 免責聲明