ASP.NET MVC 5 学习教程:通过控制器访问模型的数据
原文 ASP.NET MVC 5 学习教程:通过控制器访问模型的数据
起飞网 ASP.NET MVC 5 学习教程目录:
- 添加控制器
- 添加视图
- 修改视图和布局页
- 控制器传递数据给视图
- 添加模型
- 创建连接字符串
- 通过控制器访问模型的数据
- 生成的代码详解
- 使用 SQL Server LocalDB
- Edit方法和Edit视图详解
- 添加查询
- Entity Framework 数据迁移之添加字段
- 添加验证
- Details 和 Delete 方法详解
在本节中,你将新建一个MoviesController 类,并编写获取电影数据的代码,使用视图模板将数据展示在浏览器中。
在进行下一步之前,你需要先编译应用程序,否则在添加控制器的时候会出错。
在解决方法资源管理器的Controllers文件夹右键,选择"添加">"支架":
图1:添加Controller的菜单
在“添加支架”对话框,选择 MVC 5 Controller with read/write actions and views, using Entity Framework,然后单击“添加”按钮。
图2:添加支架对话框
在Controller name输入框中输入 MoviesController。在Model class 选择列表中,选择 Movie (MvcMovie.Models)。在Data context class选择列表中,选择 MovieDBContext(MvcMovie.Models) 。其它几个选项保持默认值,完整的截图如下:
图3:Add Controller 对话框
在点击“Add”按钮之后(如果你遇到错误,很有可能是因为你没有编译项目),Visual Studio会创建如下文件和文件夹:
- 在Controllers 文件夹中创建了MoviesController.cs 文件
- 在Views 文件夹中创建了Movies 文件夹
- 在Views\Movies 文件夹中创建了Create.cshtml, Delete.cshtml, Details.cshtml, Edit.cshtml, 和 Index.cshtml 视图文件。
ASP.NET MVC 5 自动创建了CRUD(create, read, update, delete)操作方法,并为他们创建好了视图。你现在已经有了一个拥有完整功能的应用程序,你可以使用它来创建、列表显示、编辑和删除电影了。
运行应用程序,在浏览器中查看地址 http://localhost:xxxxx/Movies 。因为程序依赖默认的路由,所以浏览器请求的地址分配给 MoviesController 的 Index 方法。换句话说,浏览器请求http://localhost:xxxxx/Movies 地址等同于请求http://localhost:xxxxx/Movies/Index 地址。浏览器中显示一个空的电影列表,因为我们目前还没有添加。
图4:电影列表页面
添加电影
选择 “Create New”链接,在打开的页面中输入一些电影信息,然后点击“Create”按钮:
图5:创建电影页面
点击“Create”按钮会将数据提交到服务器,服务器将电影信息出入数据库。再次查看/Movies 地址,在列表中就能看到我们新添加的电影了。
图6:电影列表页面
创建更多的电影记录,然后试试编辑、详细信息和删除功能。
在后面的章节中,我们将讲解一下自动生成的代码。
本文同时发布在起飞网,原文地址:http://www.qeefee.com/mvc/mvc-5-accessing-your-models-data-from-a-controller
如果认为此文对您有帮助,别忘了支持一下哦!
ASP.NET MVC 5 学习教程:通过控制器访问模型的数据的更多相关文章
- ASP.NET MVC 5 学习教程:控制器传递数据给视图
原文 ASP.NET MVC 5 学习教程:控制器传递数据给视图 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字 ...
- ASP.NET MVC 5 学习教程:添加控制器
原文 ASP.NET MVC 5 学习教程:添加控制器 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过 ...
- ASP.NET MVC 5 学习教程:快速入门
起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控制器访问模型的数据 生成的代码详解 使用 SQL Se ...
- ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解
原文 ASP.NET MVC 5 学习教程:Details 和 Delete 方法详解 在教程的这一部分,我们将研究一下自动生成的 Details 和Delete 方法. Details 方法 打开M ...
- ASP.NET MVC 5 学习教程:添加验证
原文 ASP.NET MVC 5 学习教程:添加验证 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
- ASP.NET MVC 5 学习教程:数据迁移之添加字段
原文 ASP.NET MVC 5 学习教程:数据迁移之添加字段 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符 ...
- ASP.NET MVC 5 学习教程:添加查询
原文 ASP.NET MVC 5 学习教程:添加查询 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...
- ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解
原文 ASP.NET MVC 5 学习教程:Edit方法和Edit视图详解 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 ...
- ASP.NET MVC 5 学习教程:使用 SQL Server LocalDB
原文 ASP.NET MVC 5 学习教程:使用 SQL Server LocalDB 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 ...
随机推荐
- Libev学习笔记3
设置完需要监听的事件之后,就开始event loop了.在Libev中,该工作由ev_run函数完成.它的大致流程如下: int ev_run (EV_P_ int flags) { do { /* ...
- ZYB's Premutation(有逆序数输出原序列,线段树)
ZYB's Premutation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Othe ...
- Java程序猿JavaScript学习笔记(2——复制和继承财产)
计划和完成在这个例子中,音符的以下序列: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaSc ...
- 如何自定义iOS中的控件
本文译自 How to build a custom control in iOS .大家要是有什么问题,可以直接在 twitter 上联系原作者,当然也可以在最后的评论中回复我. 在开发过程中,有时 ...
- Ext JS学习第十五天 Ext基础之 Ext.DomQuery
此文同来记录学习笔记 •Ext.dom.Query 嗯,这个类一看就是到时做什么事儿的,不用我去过多的解释了.这个类一共提供了8个方法供开发人员去使用. •要说最常用的方法,无非就是Ext.query ...
- SQL Server调试常用参数
SQL Server 清除缓存: DBCC DROPCLEANBUFFERS 从缓冲池中删除所有清除缓冲区. DBCC FREEPROCCACHE 从过程缓存中删除所有元素. DBCC FREESYS ...
- Spring源码地址和相关介绍的网址
Spring源码地址下载: https://github.com/spring-projects/spring-framework/tags >多图详解Spring框架的设计理念与设计模式:ht ...
- mbed 初试(LinkNode 板卡)(2016-04-21)
前言 感谢论坛,感谢 LinkSrite,论坛活动申请了一个 LinkNode,体验了一下 mbed. 翻看完官方 wiki,大概了解了一下 mbed 的开发,然后做了 blink 和 pwm 的测试 ...
- jquery 中多个存在依赖关系的ajax调用解决办法
在使用ajax异步调用的时候,可能碰到同时调用多个ajax这种情况.而且多个ajax之间还存在依赖关系.这种情况怎么处理呢? 有两种办法: 一种是多个ajax嵌套调用,这时需要设置async为fa ...
- octopress command memo
1 rake new_post rake new_post[title] # Begin a new post in source/_posts 2 rake preview ht ...