先定义一个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)的更多相关文章

  1. Core Mvc传值Query、Form、Cookies、Session、TempData、Cache

    1.传值方法 使用Request的方法(1-3): 1)Query:获取链接?后面的值 如:http://localhost:55842/Home/About?name=kxy public IAct ...

  2. 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别

    ViewData和TempData是字典类型,赋值方式用字典方式, ViewData["myName"] ViewBag是动态类型,使用时直接添加属性赋值即可 ViewBag.my ...

  3. Asp.Net Core MVC传值 Asp.Net Core API 前台写法

    $("#Add_User").click(function () { var obj = { //"属性名": 传递的值, "User_Name&qu ...

  4. ASP.NET Core 入门教程 5、ASP.NET Core MVC 视图传值入门

    一.前言 1.本教程主要内容 ASP.NET Core MVC 视图引擎(Razor)简介 ASP.NET Core MVC 视图(Razor)ViewData使用示例 ASP.NET Core MV ...

  5. ASP.NET Core 入门笔记6,ASP.NET Core MVC 视图传值入门

    摘抄自:https://www.cnblogs.com/ken-io/p/aspnet-core-tutorial-mvc-view-renderdata.html 如有侵权请告知 一.前言 1.本教 ...

  6. 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 ...

  7. MVC 强类型传值Model。和弱类型传值ViewData[&quot;&quot;]。及用EF进行增删查改(母版页的使用)

    <1> 控制器 </pre><pre name="code" class="csharp">using MvcTest.Mo ...

  8. 创建ASP.NET Core MVC应用程序(1)-添加Controller和View

    创建ASP.NET Core MVC应用程序(1)-添加Controller和View 参考文档:Getting started with ASP.NET Core MVC and Visual St ...

  9. ASP.NET MVC中viewData、viewBag和templateData的区别

    在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag是动态类型(dynamic),ViewData是一个 ...

随机推荐

  1. 0基础如何学Android开发

    链接:http://pan.baidu.com/s/1bIEIse 密码:ky7w https://pan.baidu.com/s/1i53bs6x提取码:0pwthttps://www.zhihu. ...

  2. flask学习之路

    目录 flask初识 flask模板 flask的session flask路由 flask配置和实例化传参 flask蓝图 更新中

  3. MySQL利用binlog恢复误操作数据(python脚本)

    在人工手动进行一些数据库写操作的时候(比方说数据订正),尤其是一些不可控的批量更新或删除,通常都建议备份后操作.不过不怕万一,就怕一万,有备无患总是好的.在线上或者测试环境误操作导致数据被删除或者更新 ...

  4. centos7.2安装完成的基本操作

    系统是centos7.2,安装完成的基本操作 1 修改网卡为eth02 更新系统3 给/etc/rc.local添加执行权限4 添加用户hequan5 禁用selinux6 关闭防火墙安装iptabl ...

  5. Inception介绍(MySQL自动化运维工具)

    Inception介绍 GitHub:https://github.com/mysql-inception/inception 文档:https://mysql-inception.github.io ...

  6. Event Recommendation Engine Challenge分步解析第四步

    一.请知晓 本文是基于: Event Recommendation Engine Challenge分步解析第一步 Event Recommendation Engine Challenge分步解析第 ...

  7. MySQL语句_积累

    1.GROUP_CONCAT 直接返回拼接好的多个结果,可以供IN()函数使用 语句 结果 +-----------------------------------------+ | GROUP_CO ...

  8. collections 数据结构模块namedtuple

    namedtuple类 导入模块 from collections import namedtuple 使用方法及说明 #pycharm 里按住 ctrl键点击 collections可查看源码 #c ...

  9. Hbase运维手册(1)

    1. region情况 需要检查 1. region的数量(总数和每台regionserver上的region数) 2. region的大小 如果发现异常可以通过手动merge region和手动分配 ...

  10. oracle里实例和数据库之间的关系

    一个数据库服务器上可以装几个数据库它们都是用sid来标志,例如orcl1,orcl2,orcl3等等,一个数据库如orcl1中可以有多个实例吗? Oracle数据库,实际上应该是说,我们使用的是Ora ...