Intro to ASP.NET MVC 4 with Visual Studio [译五:添加一个模型]
作者:Rick Anderson and Scott Hanselman
译者:PeterZhang
原文: http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4
注: 边读编译,如有不准确之处,请予以纠正,谢谢!!!
-----------------------------------------------------------------------------------------------------------------
在这部分将添加一些类来管理数据库中的电影。这些类就是ASP.NET MVC应用程序的“模型”部分。
将使用Entity Framework的.NET Framework数据访问技术来定义和使用这些模型类。Entity Framework(通常成为EF)支持Code First的开发模式。Code First允许你通过编写简单类来创建模型对象。(这些也被称为POCO类,来自“plain-old CLR objects”)然后你可以从这些类创建数据库,使开发流程简洁快速。
添加模型类
在Solution Explorer,右键Model文件夹,选择Add,然后选择Class。
键入类名“Movie”。
添加如下5个属性到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对象中的每一个实例将对应数据库表中的一行数据,Movie的每个属性对应表的一列。
在相同的文件里,添加下面的MovieDBContext类:
public class MovieDBContext : DbContext { public DbSet<Movie> Movies { get; set; } }
MovieDBContext类代表Entity Framework movie的数据库上下文,用于处理索引、存储和更新数据库中的Movie类实例。MovieDBContext派生自Entity Framework提供的DbContext基类。
为了能够使用DbContext和DbSet,你需要在文件顶部添加下面的using语句:
using System.Data.Entity;
完整的Movie.cs文件如下。(几个不需要的using语句已经被删除。)
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文件。(不是View文件夹下的Web.config。)打开标红的Web.config文件。
添加下面的连接字符串到Web.config文件的<connectionStrings>元素下。
<add name="MovieDBContext" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient" />
下面的例子显示了添加新连接字符串的Web.config文件的一部分:
<connectionStrings> <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcMovie-2012213181139;Integrated Security=true" providerName="System.Data.SqlClient" /> <add name="MovieDBContext" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" providerName="System.Data.SqlClient" /> </connectionStrings>
这些少量的代码和XML就是为了表示和存储数据库中的movie数据所要编写的全部内容。
接下来,将创建新的MovieController类用来显示电影数据和允许用户创建新的电影列表。