【翻译】ASP.NET MVC4 入门(四)添加一个Model

原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model

这一小节我们将添加一些类来管理数据库中的电影。这些类将会成为我们的ASP.NET MVC应用中的model部分。

我们将会使用.net framework提供的数据访问技术——众所周知的Entity Framework来定义这些类。Entity Framework(通常简写成EF)支持一种叫做Code First的开发模式。Code First允许我们编写简单的代码来创建model。(这些类被称为POCO类,"plain-old CLR objects",平凡无奇的clr对象)我们可以使用这些类来创建数据库,从而使我们的开发流程整洁快速。

添加Model类

在解决方案资源管理器中,右键单击Models文件夹,选择"Add",然后选择"Class"。

image

为新建的类命名为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类的实例都对应数据库表中的一行记录,每一个属性都对应该行记录的一个字段。

在同样的文件里添加如下的MovieDBContext类:

public class MovieDBContext : DbContext 
{
    public DbSet<Movie> Movies { get; set; } 
}

MovieDBContext类代表了Entity Framework数据库上下文,用来处理获取、存储和更新Movie对象到数据库的工作。MovieDBContext类派生自Entity Framework提供的DbContext类。

为了使用DbContext和DbSet,我们需要添加相应的命名空间:

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 LocalDB

我们创建的MovieDBContext类负责连接到数据库并且处理数据库中记录到Movie对象的映射。你肯定有一个疑问:我们怎样指定这个类要连接的数据库。我们通过在应用程序的Web.config文件添加数据库连接信息来实现。

打开应用程序根路径下的Web.config文件(注意不是Views文件夹下的Web.config)。

image

为<connectionStrings>元素添加如下内容:

<add name="MovieDBContext"   connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Movie.mdf;Integrated Security=True"  providerName="System.Data.SqlClient"/>

注:原文中使用的是Visual Studio 2012,使用的数据库是Sql Server LocalDB,我使用的是Visual Studio 2010,使用的数据库是Sql Server Express,如果使用LocalDB的话,原文的连接字符串配置是:

<add name="MovieDBContext" 
   connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" 
   providerName="System.Data.SqlClient" 
/>

注:我们仅仅需要在Web.config文件中添加连接字符串就行了,不需要创建数据库,数据库由Entity Framework负责创建,详情在下一篇文章里介绍。

接下来就让我们创建一个MoviesController类来展示和编辑数据.

posted @   Lukexywang  阅读(2283)  评论(5编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示