添加新模型
注意
此处使用最新版本的 Visual Studio 提供了本教程的更新版本。 新教程使用 ASP.NET Core MVC,这比本教程提供了许多改进。
本教程介绍具有控制器和视图的 ASP.NET Core MVC。 Razor Pages 是 ASP.NET Core 中的一个新替代项,它是一种基于页面的编程模型,可简化 Web UI 的生成并提高效率。 建议先尝试 Razor 页面教程,再使用 MVC 版本。 Razor 页面教程:
- 易于关注。
- 涵盖更多功能。
- 是新应用开发的首选方法。
在本部分中,你将添加一些用于管理数据库中电影的类。 这些类将是 ASP.NET MVC 应用的“模型”部分。
你将使用称为实体框架的.NET Framework数据访问技术来定义和使用这些模型类。 实体框架 (通常称为 EF) 支持名为 Code First 的开发范例。 Code First 允许通过编写简单类来创建模型对象。 (这些也称为 POCO 类,来自“普通旧 CLR 对象”。) 然后,你可以从课堂动态创建数据库,从而实现非常干净和快速的开发工作流。 如果需要先创建数据库,仍可按照本教程了解 MVC 和 EF 应用开发。 然后,可以按照 Tom Fizmakens ASP.NET 基架 教程进行操作,其中介绍了数据库优先方法。
添加模型类
在解决方案资源管理器中,右键单击“模型”文件夹,选择“添加”,然后选择“类”。
输入 类 名称“Movie”。
将以下五个属性添加到 Movie
类:
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; }
}
}
我们将使用 Movie
类来表示数据库中的电影。 对象的每个实例 Movie
都将对应于数据库表中的一行,并且类 Movie
的每个属性将映射到表中的一列。
注意:若要使用 System.Data.Entity 和相关类,需要安装 Entity Framework NuGet 包。 有关进一步说明,请单击此链接。
在同一文件中,添加以下 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; }
}
}
MovieDBContext
类表示 Entity Framework 电影数据库上下文,该上下文处理数据库中的类实例的提取、存储和更新Movie
。 MovieDBContext
派生自DbContext
实体框架提供的基类。
为了能够引用 DbContext
和 DbSet
,需要在文件顶部添加以下 using
语句:
using System.Data.Entity;
可以通过手动添加 using 语句来执行此操作,也可以将鼠标悬停在红色波浪线上,单击 Show potential fixes
并单击 using System.Data.Entity;
注意:已删除多个未 using
使用的语句。 Visual Studio 会将未使用的依赖项显示为灰色。 可以通过将鼠标悬停在灰色依赖项上来删除未使用的依赖项,单击 Show potential fixes
并单击“ 删除未使用的 Using”。
我们终于在 MVC) 中添加了 (M 的模型。 在下一部分中,你将使用数据库连接字符串。