C# MVC 自学笔记—5 添加模型
==============================翻译==============================
在本节中,您将添加一些类来管理数据库中的电影。这些类将 ASP.NET MVC 应用程序的"模型"部分。
您将使用一种名叫实体框架的 .NET Framework 数据访问技术来定义和使用这些模型类。(通常称为 EF),实体框架支持一个称为代码优先的发展模式。代码首先允许您通过编写简单的类来创建模型的对象。(这些也称为是 POCO 类,从"纯老 CLR 对象"。)然后,您可以使上飞从您的类,从而使非常干净和快速发展的工作流创建的数据库。
添加模型的类
在解决方案资源管理器中,右键单击模型文件夹,选择添加,,然后选择类.

输入类名“Movie”。
将以下五个属性添加到Movie类:
publicclassMovie{publicint ID {get;set;}publicstringTitle{get;set;}publicDateTimeReleaseDate{get;set;}publicstringGenre{get;set;}publicdecimalPrice{get;set;}}
我们会使用Movie类来表示数据库中的电影。Movie对象的每个实例将对应,数据库表中的行和Movie类的每个属性将映射到表中的列。
在同一文件中,添加下面的MovieDBContext类:
publicclassMovieDBContext:DbContext{publicDbSet<Movie>Movies{get;set;}}
MovieDBContext类表示处理提取、 存储和更新数据库中的Movie类实例的实体框架电影数据库上下文。MovieDBContext从实体框架提供的DbContext基类派生。
为了能够引用DbContext和DbSet,您需要在文件的顶部添加以下using语句:
usingSystem.Data.Entity;
完整的Movie.cs文件如下所示。(几个使用不是语句需要已删除.)
usingSystem;usingSystem.Data.Entity;namespaceMvcMovie.Models{publicclassMovie{publicint ID {get;set;}publicstringTitle{get;set;}publicDateTimeReleaseDate{get;set;}publicstringGenre{get;set;}publicdecimalPrice{get;set;}}publicclassMovieDBContext:DbContext{publicDbSet<Movie>Movies{get;set;}}}
创建的连接字符串和使用 SQL 服务器 LocalDB
您创建的MovieDBContext类处理连接到数据库和将Movie对象映射到数据库记录的任务。你可能会问的一个问题是,如何指定它将连接到的数据库。你可以做到通过添加应用程序的Web.config文件中的连接信息。
打开的应用程序根Web.config文件。(不Web.config文件在视图文件夹中。打开在红色中所概述的Web.config文件。

向Web.config文件中的<connectionStrings>元素添加下面的连接字符串。
<addname="MovieDBContext"connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"providerName="System.Data.SqlClient"/>
下面的示例演示Web.config文件的一部分,以添加新的连接字符串:
<connectionStrings><addname="DefaultConnection"connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-MvcMovie-2012213181139;Integrated Security=true"providerName="System.Data.SqlClient"/><addname="MovieDBContext"connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True"providerName="System.Data.SqlClient"/></connectionStrings>
这少量的代码和 XML 是您需要编写为代表,将电影数据存储在数据库中的一切。
接下来,你就会生成一个新的MoviesController类,您可以使用显示电影数据并允许用户创建新的电影列表。
==============================翻译==============================
C# MVC 自学笔记—5 添加模型的更多相关文章
- C# MVC 自学笔记—4 添加视图
==============================翻译============================== 在本节中,你将要修改 HelloWorldController 类,以便使 ...
- C# MVC 自学笔记—6 编辑方法和编辑视图
==============================翻译============================== 运行该应用程序并浏览到Movies控制器通过将/Movies追加到您的浏览 ...
- C# MVC 自学笔记—2 MVC Movie简介
MVC Movie是微软官方的一个MVC入门项目,我们可以跟着这个项目来实践入门 这是官方地址 http://www.asp.net/mvc/tutorials/mvc-4/getting-start ...
- ASP.NET MVC系列:添加模型
模型(Model)是应用程序中用于处理应用程序数据逻辑的部分;通常模型对象在数据库中存取数据 添加模型类 在解决方案中右击Models文件夹,然后选择“添加”,在“添加”项里选择“类”:或者选中Mod ...
- [Asp.net MVC]Asp.net MVC5系列——添加模型
目录 概述 添加模型 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5系列——添加视图 概述 在本节中我们将追加 ...
- ASP.NET MVC 5 学习教程:添加模型
原文 ASP.NET MVC 5 学习教程:添加模型 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
- 【译】ASP.NET MVC 5 教程 - 4:添加模型
原文:[译]ASP.NET MVC 5 教程 - 4:添加模型 在本节中,我们将添加一些管理电影数据库的类,这些类在ASP.NET MVC 应用程序中扮演“Model”的角色. 我们将使用.NET F ...
- V-rep学习笔记:机器人模型创建2—添加关节
下面接着之前经过简化并调整好视觉效果的模型继续工作流,为了使模型能受控制运动起来必须在合适的位置上添加相应的运动副/关节.一般情况下我们可以查阅手册或根据设计图纸获得这些关节的准确位置和姿态,知道这些 ...
- MVC学习笔记(三)—用EF向数据库中添加数据
1.在EFDemo文件夹中添加Controllers文件夹(用的是上一篇MVC学习笔记(二)—用EF创建数据库中的项目) 2.在Controllers文件夹下添加一个空的控制器(StudentsCon ...
随机推荐
- 使用Groovy进行依赖注入
为什么选择Groovy? 传统的依赖注入是XML,对我而言,可读性太差,太不美观,强烈地想换一个方式进行依赖注入,Groovy作为XML的替代方案,在Spring4之后被引入,是基于JVM的一门方言, ...
- javascript mapping
1. 使用var定义的变量是声明,没有使用var是给window或者gloable对象增加属性. 比如var a = 10; //定义一个变量名称为a b= 20; // 给window对象增加一个属 ...
- javaEE的13种核心技术规范
javaEE平台由一整套服务(Services).应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对javaEE中的13种技术规范进行简单的记录: J2EE中的 ...
- BZOJ 1652: [Usaco2006 Feb]Treats for the Cows( dp )
dp( L , R ) = max( dp( L + 1 , R ) + V_L * ( n - R + L ) , dp( L , R - 1 ) + V_R * ( n - R + L ) ) 边 ...
- ios 面试题 经典(比较全) 根据重点总结
史上最全的iOS面试题及答案 1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encodin ...
- [置顶] P2P之我见,关于打洞的学问-------开篇
最近忙项目,有点累,无暇顾急博客,4月份本来想写写流媒体的文章,结果回家休了两个月回深圳后,接了P2P的项目,那就开始P2P吧. P2P起源于美国大学生Shawn Fanning 写的一个分享软件Na ...
- Android 开发笔记 “广播组件使用”
在Activity中,注册广播的一个Demo. 总共分3步 第一步:定义一个BroadcastReceiver广播接收类: private BroadcastReceiver mBroadcastRe ...
- 玩2k16
2k是我最喜欢的游戏啦,平时无聊了都会搞两盘.现在到2k16了,玩游戏时碰到一些麻烦,记录便查. 我哥一直说他的电脑玩2K16非常卡,根本玩不了,但是他的电脑配置可比我的高啊,我玩起溜溜地,喊他把配置 ...
- r语言之生成随机序列,随机数生成函数及用法
(1)生成正态分布随机数: rnorm(n,mean,sd) 其中,n表示生成的随机数个数,mean表示正态分布均值,sd表示正态分布标准差 > rnorm(5,0,2)[1] -5.3 ...
- How can you determine how much disk space a particular MySQL table is taking up?
http://stackoverflow.com/questions/6474591/how-can-you-determine-how-much-disk-space-a-particular-my ...