MVC音乐商店 - 第四部分:Models和数据访问

目前为止,我们都是通过“模拟数据”从控制器到视图模板,现在,我们已经准备好一个真正的数据库了。在本教程中,我们将实现如何使用SQL Server Express(通常被称为SQL CE) 作为我们的数据库引擎(SQL CE是一个免费的),同样适用于完整的SQL Server。

 

数据库访问和实体框架

我们将使用实体框架(EF)支持,在ASP.NET MVC 3项目来查询和更新数据库。EF(Entity Framework)是一个灵活的对象关系映射(ORM)数据API,使开发人员能够用面向对象的方法来实现对数据库中的数据进行查询和更新数据。

 

在本教程中,我们将用EF来创建数据库。所以,现在我们创建一个Artists模型,然后将该艺术家的专辑放到Artists模型里,添加一个新的模型文件,命名为:Artists.cs,如下代码:

    public class Artist
    {
        public int ArtistId { get; set; }
        public string Name { get; set; }
    }

 

更新Genre模型下的Album类,如下代码:

public class Album
    {
        public int AlbumId { get; set; }
        public int GenreId { get; set; }
        public int ArtistId { get; set; }
        public string Title { get; set; }
        public decimal Price { get; set; }
        public string AlbumArtUrl { get; set; }
        public Genre Genre { get; set; }
        public Artist Artist { get; set; }
    }

 

接下来,做以下类的更新

using System.Collections.Generic;

public class Genre
{
    public int GenreId { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public List<Album> Albums { get; set; }
}

 

添加App_Data文件夹

我们将在App_Data文件夹下保存SQL文件,App_Data是一个特殊的目录,在ASP.NET 中已经为数据库访问设定了安全的访问权限,在“项目”菜单中,选择“添加ASP.NET文件夹”—>“App_Data”:

 

在web.config文件中配置连接字符串

我们将添加几行代码到web.config文件中,这样EF知道如何连接到我们的数据库,双击位于项目根目录的web.config文件。

 

在web.config文件里的<configuration>节点内添加一个<connectionStrings>节点,代码如下:

<connectionStrings>
    <add name="MusicStoreEntities"
     connectionString="Data Source=|DataDirectory|MvcMusicStore.sdf"
     providerName="System.Data.SqlServerCe.4.0"/>
  </connectionStrings>

 

添加Context

在Models里新增一个名为MusicStoreEntities.cs类

 

这篇只翻译到这里,看到有园子里有人说,以前 冠军 翻译过,所以,不打算再翻译下去了,我MVC还未入门,需根据官网的教程继续学习MVC 3。这几天的学习,对MVC的学习也有些了解,学习新东西很锻炼人,尤其是以前从没接触过的,我感觉这几天过的很充实。我还得继续加油,去学习MVC,MVC很棒!

 

冠军翻译的 ASP.NET MVC 音乐商店 

 

附一张图给大家:

 

posted on 2012-09-14 14:56  Verms  阅读(727)  评论(0编辑  收藏  举报

导航