Core Mvc传值ViewData、ViewBag和return view(model)
先定义一个Model类Student
namespace Lession.Models
{
public class Student
{
public string Name { get; set; }
public int Age { get; set; }
public string Sex { get; set; }
}
}
控制器如下:
using Lession.Models;
using Microsoft.AspNetCore.Mvc; namespace Lession.Controllers
{
public class TestController : Controller
{
public IActionResult Index()
{
ViewData["name"] = "kxy";
ViewData["sex"] = "男";
ViewData["age"] = ; ViewBag.Name = "kxy";
ViewBag.Sex = "男";
ViewBag.Age = ; Student student = new Student() { Name="kxy",Age=,Sex="男"};
return View(student);
} }
}
视图如下:
<body>
@*ViewData是进行静态数据传递*@
@ViewData["name"]
@ViewData["sex"]
@ViewData["age"]
<br /> @*ViewBag是对ViewData的封装,进行动态数据传递*@
@ViewBag.Name
@ViewBag.Sex
@ViewBag.Age
<br /> @*Model也是进行动态数据传递,需要控制器return一个model*@
@Model.Name
@Model.Age
@Model.Sex
</body>
在这里,可以对Model进行类型定义,在视图上方加入
@model Lession.Models.Student
这样,就可以在书写Model的时候自动补全属性
也可以使用后台语法添加控件,并利用model显示数据
@*使用后台语法添加控件,利用lambda表达式输出内容,这里的m指的就是上面定义的model*@
@Html.TextBoxFor(m => m.Name)
@Html.TextBoxFor(m => m.Sex)
@Html.TextBoxFor(m => m.Age)
且这个控件的Id和Name属性的值均为Student对应的属性名称
即
@Html.TextBoxFor(m => m.Name)
对应生成
<input id="Name" name="Name" type="text" value="kxy"> 2.特性DisPlayName
这个特性可以添加在类的属性上面,做属性名称解释
如:在Name上面添加特性DisPlayName
using System.ComponentModel;
namespace Lession.Models
{
public class Student
{
[DisplayName("这里是kxy的名字")]
public string Name { get; set; }
public int Age { get; set; }
public string Sex { get; set; }
}
}
视图代码:
@*输出属性的特性DisplayName*@
@Html.LabelFor(m => m.Name)
结果:
编译生成:<label for="Name">这里是kxy的名字</label>
Core Mvc传值ViewData、ViewBag和return view(model)的更多相关文章
- Core Mvc传值Query、Form、Cookies、Session、TempData、Cache
1.传值方法 使用Request的方法(1-3): 1)Query:获取链接?后面的值 如:http://localhost:55842/Home/About?name=kxy public IAct ...
- 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别
ViewData和TempData是字典类型,赋值方式用字典方式, ViewData["myName"] ViewBag是动态类型,使用时直接添加属性赋值即可 ViewBag.my ...
- Asp.Net Core MVC传值 Asp.Net Core API 前台写法
$("#Add_User").click(function () { var obj = { //"属性名": 传递的值, "User_Name&qu ...
- ASP.NET Core 入门教程 5、ASP.NET Core MVC 视图传值入门
一.前言 1.本教程主要内容 ASP.NET Core MVC 视图引擎(Razor)简介 ASP.NET Core MVC 视图(Razor)ViewData使用示例 ASP.NET Core MV ...
- ASP.NET Core 入门笔记6,ASP.NET Core MVC 视图传值入门
摘抄自:https://www.cnblogs.com/ken-io/p/aspnet-core-tutorial-mvc-view-renderdata.html 如有侵权请告知 一.前言 1.本教 ...
- 007.Adding a view to an ASP.NET Core MVC app -- 【在asp.net core mvc中添加视图】
Adding a view to an ASP.NET Core MVC app 在asp.net core mvc中添加视图 2017-3-4 7 分钟阅读时长 本文内容 1.Changing vi ...
- MVC 强类型传值Model。和弱类型传值ViewData[""]。及用EF进行增删查改(母版页的使用)
<1> 控制器 </pre><pre name="code" class="csharp">using MvcTest.Mo ...
- 创建ASP.NET Core MVC应用程序(1)-添加Controller和View
创建ASP.NET Core MVC应用程序(1)-添加Controller和View 参考文档:Getting started with ASP.NET Core MVC and Visual St ...
- ASP.NET MVC中viewData、viewBag和templateData的区别
在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag是动态类型(dynamic),ViewData是一个 ...
随机推荐
- Codeforces Gym 191033 E. Explosion Exploit (记忆化搜索+状压)
E. Explosion Exploit time limit per test 2.0 s memory limit per test 256 MB input standard input out ...
- 114. Flatten Binary Tree to Linked List(M)
. Flatten Binary Tree to Linked List Given a binary tree, flatten it to a linked list in-place. For ...
- (链表 双指针) leetcode 142. Linked List Cycle II
Given a linked list, return the node where the cycle begins. If there is no cycle, return null. To r ...
- redis的使用场景和基本数据类型
一:redis使用的场景 redis是一个高性能的NoSQL数据库,特点是高性能,持久存储,适应高并发的应用场景. 下面看看它的使用场景1.取最新N个数据的操作比如取网站的最新文章,通过下面方式,我们 ...
- smarty缓存
huancun.php代码 <?php$p =1;if( !empty($_GET["page"])){ $p =$_GET["page"];}$file ...
- flask 渲染jinja2模版和传参
渲染模版(html文件) A.模版文件(html)放入到template目录下,项目启动的时候会从template目录里查找, B.从flask中导入“render_tempalte”函数 C.在视图 ...
- Kafka Offset相关命令总结
Kafka Offset相关命令总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查询topic的offset的范围 1>.查询某个topic的offset的最小值 [ ...
- network / switchboard / jiaohuanji
s 步骤1:模拟交换机电源故障,验证设备运行正常 步骤2:模拟交换机主控故障,验证设备运行正常 步骤3:模拟交换机业务单板故障,验证业务运行正常 -- 需要验证业务 步骤4:模拟交换机堆叠分裂 -- ...
- CrawlSpiders模块的使用
创建文件模板 scrapy genspider -t crawl tencent tencent.com CrawlSpiders就是为爬取整站孕育而生的,我们以前是分页下一页,然后再yied.这样太 ...
- css 动画【转】
css 动画 http://www.w3school.com.cn/css3/css3_animation.asp