ASP.NET Core----基础学习05----将数据传递给视图文件的五种情况
创始人
2025-01-07 08:03:05
0

文章目录

      • 1. 类型一:使用ViewData将数据传递给视图文件(默认视图文件)
      • 2. 类型二:自定义选择视图文件 并传递ViewData数据
      • 3. 类型三:使用ViewBag将数据传递给视图文件
      • 4. 类型四:在视图文件中使用@model转化为强数据类型
      • 5. 类型五:使用视图模型,将某视图文件需要的所有数据归纳到一个数据模型中

1. 类型一:使用ViewData将数据传递给视图文件(默认视图文件)

step1: 创建Views/Home 文件夹 ,并创建Privacy.cshtml 文件,内容如下

在这里插入图片描述

# Privacy.cshtml   @using ASP.Net_Blank.Models;  @{ 	// 此处使用 as 是方便最终调用@stu的时候与Student类关联,最终方便读取到属性Name、ClassName等。     var stu = ViewData["Student"] as Student; }                              @ViewData["PageTitle"]                            
@stu.Name
@stu.ClassName

this is from Views/Home/Privacy.cshtml


step2: HomeController.cs 的函数如下:
在这里插入图片描述


step3: 最终显示效果如下:
在这里插入图片描述


2. 类型二:自定义选择视图文件 并传递ViewData数据

step1:参照如上步骤,创建文件夹MyViews/Home ,并创建文件Privacy.cshtml

在这里插入图片描述

@*Privacy.cshtml文件*@ @* 方式二:使用ViewData将数据传递给视图: *@   @using ASP.Net_Blank.Models;       @ViewData["PageTitle"]              @{             var student = ViewData["Student"] as Student;         }          
姓名: @student.Name
ID : @student.Id
班级: @student.ClassName

This is from MyViews/Home/Privacy.cshtml


step2: Privacy函数,只需要在View中指定具体哪个视图文件即可

在这里插入图片描述


step3: 最终显示效果如下:
在这里插入图片描述


3. 类型三:使用ViewBag将数据传递给视图文件

step1:Privacy方法中的内容

  • 此处貌似不能使用自定义的视图函数,且没传递model数据,直接在视图文件中读取@ViewBag即可

在这里插入图片描述


step2:Privacy.cshtml 文件内容
在这里插入图片描述


step3: 最终显示效果如下:

在这里插入图片描述


4. 类型四:在视图文件中使用@model转化为强数据类型


step1: 在controller中的设置:
在这里插入图片描述


step2: 视图文件中的设置:

  • 注意: 此处引用的时候使用了@model ASP.Net_Blank.Models.Student , 而页面中使用的是大写的@Model
  • 此处cshtml文件中,可自动识别Student的属性

在这里插入图片描述

自动识别Student的属性:
在这里插入图片描述


step3: 最终显示效果:
在这里插入图片描述


5. 类型五:使用视图模型,将某视图文件需要的所有数据归纳到一个数据模型中


step1: 创建文件夹ViewModels 以及文件HomeDetailsViewModel.cs

在这里插入图片描述

在这里插入图片描述


step2: HomeController.cs文件中的设置
在这里插入图片描述


step3: 视图文件中的设置
在这里插入图片描述


step4: 最终显示效果
在这里插入图片描述

相关内容

热门资讯

透视插件(wPK)微扑克ai机... 透视插件(wPK)微扑克ai机器人(透视)详细辅助解密教程(真是存在有挂);该软件可以轻松地帮助玩家...
透视私人局!智星德州菠萝开挂,... 透视私人局!智星德州菠萝开挂,(wepower德州)其实是有挂(详细辅助wpk教程)1、下载好智星德...
透视透视(德州aa扑克)aap... 透视透视(德州aa扑克)aapoker透明挂(透视)确实真的是有挂(详细辅助细节方法)aapoker...
透视有挂(Wpk)微扑克辅助挂... 透视有挂(Wpk)微扑克辅助挂(透视)详细辅助安装教程(其实是真的有挂)1、该软件可以轻松地帮助玩家...
透视安卓版!德州之星有辅助挂,... 透视安卓版!德州之星有辅助挂,(德州之星)一直存在有挂(详细辅助介绍教程)1)德州之星有辅助挂辅助挂...
透视真的(AAPOKEr)aa... 透视真的(AAPOKEr)aapoker透明挂(透视)一直有挂(详细辅助安装教程);亲,关键说明,a...
透视插件(wpK)wpk提高胜... 透视插件(wpK)wpk提高胜率(透视)详细辅助细节方法(一贯存在有挂);1、wpk提高胜率机器人多...
透视工具(AAPOKEr)aa... 透视工具(AAPOKEr)aapoker有挂(透视)一贯有挂(详细辅助细节方法)1)aapoker有...
透视好友房!智星德州菠萝,(来... 透视好友房!智星德州菠萝,(来玩德州)都是存在有挂(详细辅助安装教程)1、实时智星德州菠萝开挂更新:...
透视攻略(AAPoker)aa... 透视攻略(AAPoker)aa扑克辅助(透视)总是真的有挂(详细辅助德州教程)1、aa扑克辅助ai辅...