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 ...
随机推荐
- .Net Core报“‘GB2312‘ is not a supported encoding name. For information on defining a custom encod”的错误
1.问题描述 在.Net Core中使用Encoding.GetEncoding("GB2312")报如下错误: System.ArgumentException:"'G ...
- 浅析Bootstrap中Tab(标签页)的使用方法
Bootstrap 导航元素使用相同的标记和基类,改变修饰的class,可以在不同的样式间进行切换如".nav-pills"(胶囊式导航)与 ".nav-tabs&quo ...
- Task VS ValueTask
在 C# 中,异步编程是构建响应式应用程序的基础.Task 是表示异步操作的首选类型.但是,在某些高性能场景中,与 Task 相关的开销可能会达到一个瓶颈.ValueTask 是 .NET Core ...
- 【由技及道】API契约的量子折叠术:Swagger Starter模块的十一维封装哲学【人工智障AI2077的开发日志】
摘要:本文记录一个未来AI如何通过Swagger-Starter组件实现接口文档的维度折叠,让RESTful接口规范成为跨越时空的永恒契约. 动机:契约精神的量子困境 "一个软件?无外乎支持 ...
- 【Logisim】带有初始化功能的寄存器
属于是拾人牙慧 子电路外观 子电路逻辑 描述: Q端 Counter + MUX : 实现初始化.初始时MUX选择init,待时钟第一个上升沿后,Counter([Data Bit]:1bit,[Ac ...
- mysql 连接失败:message from server: "Host '192.168.xx.xxx' is not allowed to connect to this MySQL server"
前言 mysql 连接失败:message from server: "Host '192.168.xx.xxx' is not allowed to connect to this MyS ...
- Ubuntu20.04搭建k8s v1.23.3版本集群
前言 服务器统一版本 Ubuntu 20.04 搭建集群最少要两台服务器 每台服务器都需要 docker.环境配置.安装 kubeadm.kubelet 和 kubectl docker 安装 doc ...
- bs4库爬取天气预报
Python不仅用于网站开发,数据分析,图像处理,也常用于爬虫技术方向,最近学习了解下,爬虫技术入门一般先使用bs4库,爬取天气预报简单尝试下. 第一步:首先选定目标网站地址 网上查询,天气预报准确率 ...
- 基础指令:三剑客之sed、三剑客之awk详解
目录 4.9 三剑客之sed(查找.替换.删除.插入) 作用: 语法格式: 4.9.1 sed指定行输出 [行数]p 4.9.2 sed模糊搜索 /[字符串]/p 4.9.3 按照区间进行过滤查找 [ ...
- Netty源码—3.Reactor线程模型二
大纲 5.NioEventLoop的执行总体框架 6.Reactor线程执行一次事件轮询 7.Reactor线程处理产生IO事件的Channel 8.Reactor线程处理任务队列之添加任务 9.Re ...