Asp.net mvc基础(二)Controller给View传递数据的方式
1.ViewData传值
步骤一:通过在控制器中以键值对的形式进行赋值
ViewData["键"] = 值
赋值:

调用:

2.ViewBag传值
ViewBag是dynamic类型的参数,是对ViewData一个动态类型封装。
比如:使用ViewData["name"]="张三";进行赋值,在view中可以使用ViewBag.name进行调用
或者ViewBag.name = "张三";进行赋值,在view中使用ViewData["name"]进行调用
赋值:

调用:

3.Model类进行传值
弱类型模型传值
首先定义Model类,在控制器的方法中进行赋值,如下:

在View中直接使用@Model.Id等形式进行调用
注意:Model首字母一定要大写

强类型模型传值
强类型模型传值唯一不同的是,在View中通过"@model类型"指定类型。那么在调用的时候就会有提示出现该模型类的属性。

4.Action的三种类型的参数
Model类的参数

普通参数
在第一次请求并没有传递参数的时候,会发生报错,报错的原因是int类型必须赋值

解决方法:将int类型的参数变成可空类型的参数

请求参数正确做法如下:

FormCollection类型参数(只能post请求)
前端

后端:

注意:Action方法是不能重载的,如下图所示

如果想要重载的话,就需要将两个方法名相同的Action设置为不同的请求方式,如下所示:

提交文件
请求方式:post请求,文件参数类型:HttpPostedFileBase
前端一定要使用:enctype="multipart/form-data"的形式,不然会报错
前端:

后端:

Asp.net mvc基础(二)Controller给View传递数据的方式的更多相关文章
- MVC Controller向View传递数据
ASP.NET MVC中,Controller向View传递数据的方式有一下6种 ViewData ViewBag PartialView TempData ViewModel Tuple 1.Vie ...
- ASP.NET MVC2中Controller向View传递数据的三种方式
转自:http://www.cnblogs.com/zhuqil/archive/2010/08/03/Passing-Data-from-Controllers-to-View.html 在Asp. ...
- ASP.NET MVC 5 学习教程:控制器传递数据给视图
原文 ASP.NET MVC 5 学习教程:控制器传递数据给视图 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字 ...
- ASP.NET mvc下在Controller下action的跳转方式
在ASP.NET mvc下,action有多种挑战方式: return RedirectToAction("Index");//一个参数时在本Controller下 如果Redir ...
- Controller向View传递数据
1. 使用ViewData传递数据 我们在Controller中定义如下: ViewData[“Message”] = “Hello word!”; 然后在View中读取Controlle ...
- Controller和View传递数据的几种方式
使用ViewBag存储数据,如ViewBag.time=2012/7/1,View中可以直接用ViewBag("time")的方式取出数据. 使用ViewData存储数据,存储对象 ...
- ASP.NET MVC 四种Controller向View传值方法
控制器: // Get: Data public ActionResult Index() { //ViewData 方式 ViewData["UserName"] = " ...
- ASP.NET MVC 3.0 Controller基础
ASP.NET MVC 3.0 Controller基础 1.Controller类与方法 Controller(控制器)是ASP.NET MVC的核心,负责处理浏览器请求,并作出响应.Cotro ...
- ASP.NET MVC中controller和view相互传值的方式
ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...
- ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...
随机推荐
- 我的程序库:HiCSUtil
HiCSUtil是我写的一个通用程序库,地址:https://github.com/xumingxsh/HiCSUtil 该库的目标是为重用的一些功能提供一个通用的库.主要包括: 1: CBO: 提供 ...
- linux:搭建Drupal
了解 Drupal 是使用 PHP 语言编写的开源内容管理框架(CMF),由内容管理系统(CMS)及 PHP 开发框架(Framework)共同构成.Drupal 具备强大的定制化开发能力,您可使用 ...
- Java线程的安全问题
当多个线程同时访问同一资源(变量,文件,记录),如果只有读操作,则不会有线程安全问题,如果有读和写操作,则会产生线程安全问题,必须保证共享数据同一时刻只能有同一个线程操作.Java采取的办法是sync ...
- ctfshow--web7 sql注入空格过滤
?id=10//union//select//1,database(),3//%23查看库名 查看表名 -1/**/union/**/select/**/1,(select/**/group_conc ...
- java中匿名类,Bean规范,全局变量
实现看见一个人,我们对它说hello public class study01 { public static void main(String[] args) { Me me = new Me(); ...
- Python介绍以及应用场景
Python介绍以及应用场景 Python简介 Python,作为一种解释型.面向对象的高级编程语言,自1989年圣诞节期间由荷兰计算机科学家Guido van Rossum创造以来,已经取得了举 ...
- linux mint安装hadoop
一.安装 安装ssh openssh-server 配置jdk环境变量~/.bashrc参考 export JAVA_HOME=/opt/jdk1.7.0_55/ export JRE_HOME= ...
- 网口CE超标了~
前不久遇到一个网口传导测试超标的问题,今天在此分享下,希望各位能有所收获~ 背景 在对量产产品EMC抽检时,发现网口CE测试在537KHz处超标2.84dB 因为是网口传导测试,所以首先检查与网口相关 ...
- autohue.js:让你的图片和背景融为一体,绝了!
需求 先来看这样一个场景,拿一个网站举例 这里有一个常见的网站 banner 图容器,大小为为 1910*560 ,看起来背景图完美的充满了宽度,但是图片原始大小时,却是: 它的宽度只有 1440 , ...
- element-ui实现table表格的嵌套(table表格嵌套)功能实现
最近在做电商类型的官网,希望实现的布局如下:有表头和表身,所以我首先想到的就是table表格组件. 表格组件中常见的就是:标题和内容一一对应:像效果图中的效果,只用基础的表格布局是不行的,因此我想 ...