上节对ViewData和ViewBag进行比较和实验,并总结了二者的缺点,ViewData和ViewBag引起的问题根源就因为数据类型,参数值的数据类型被封装在ViewData中,即对象,微软针对上述问题,推出了强类型View。
对上节的例子,如果年龄大雨50岁则显示红色。
1、创建View的强类型
即在 GetTeacherView 的顶部添加如下代码:

@model Mvc_一.Models.Teacher 

2、修改显示数据部分

        <b>Teacher Details:</b><br />Teacher Name:@Model.TeacherName<br />Teacher Id:@Model.TeacherId<br />  @{if (@Model.TeacherAge>50){<span style="background-color:red"> Teacher Age:@Model.TeacherAge</span><br />}else{<span style="background-color:green"> Teacher Age:@Model.TeacherAge</span><br />}  }  

此处,当你输入@Model. 时VS会提醒你看到Model类的属性。

3、修改Controller Action方法,传递Model数据。

      public ActionResult GetTeacherView(){Teacher t = new Teacher();t.TeacherName = "谭浩强";t.TeacherId = 1001;t.TeacherAge = 60;return View("GetTeacherView",t);}  

4、测试结果:

A | explian:
1、如果在View顶端引入相关命名空间则在View中使用类时不需要声明类的全称。
@model Mvc_一.Models.Teacher
2、微软开发建议设置强类型视图替代ViewData和ViewBag方法,避免其带来的负担。

转载请标明出处 http://blog.csdn.net/jasonhds/ 版权所有,翻版必究~谢谢合作!

Asp.net mvc 强类型View相关推荐

  1. ASP.NET MVC的View是如何呈现出来的[实例篇]

    在<[设计篇]>篇中我们通过对View引擎的总体介绍讲述了从ViewResult的创建到View呈现的原理,为了让读者对View引擎及其View呈现机制具有一个深刻的认识,我们自定义一个简 ...

  2. Visual Studio 2015打开ASP.NET MVC的View提示“Object reference not set to an instance of an object“错误的解决方案

    Visual Studio 2015打开ASP.NET MVC的View提示"Object reference not set to an instance of an object&quo ...

  3. ASP.NET MVC 之 View 测试

    项目又出问题了!手贱了一下,使用某个工具整理了一下 View 中的内容,不经意之间,将 View 的输出中大小写不小心搞错了,导致输出的内容没有办法正常解析. 这种问题太隐蔽了,下次再遇到怎么办呢? ...

  4. ASP.NET MVC one view bind many model

    一.自定义视图模型 model.cs public class AorBvm{public List<Role> GetRole { get; set; }public List<C ...

  5. ASP.NET MVC 入门5、View与ViewData

    本系列文章基于ASP.NET MVC Preview5. view在MVC模式中与用户进行最直接的接触,它负责数据的呈现.这里要注意一点就是,view只是负责数据的呈现,所以我们应该要尽量让view中 ...

  6. ASP.NET MVC中controller和view相互传值的方式

    ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...

  7. MVC 各种传值方式 ASP.NET MVC view与controller传值方式

    MVC 各种传值方式 ViewData传值. HomeController.cs Co de: public ActionResult Index() {       ViewData["T ...

  8. 【译】使用自定义ViewHelper来简化Asp.net MVC view的开发------part1

    从开发者的角度来看,创建Asp.net MVC的View是一件很爽的事,因为你可以精确控制最终生成的HTML.具有讽刺意味的是不得不写出每一行HTML代码同时也是Asp.net MVC的View中让人 ...

  9. ASP.NET MVC实践系列9-filter原理与实践

    filter实际上是一个特性(attribute),它提供了一种向controller 或 action中添加某些任务的方法,当controller 或 action被调用时,会触发filter中定义 ...

最新文章

  1. 如何委婉的表达你的心思?
  2. python足球投注_/usr/lib目录属性更改引发的蝴蝶效应
  3. codeforces-148D-Bag of mice-概率DP
  4. 具有完整静态文件(JS、CSS)支持的 ASP.NET Core 3.x 动态可加载插件
  5. 语音识别技术分析:语音变成文字其实没有那么神秘
  6. rabbitmq windows 连接 linux,在Centos7中,从主机 Windows 上无法远程访问 Linux 上rabbitmq的解决方法...
  7. 【广东大学生网络攻防大赛-WriteUp(非官方)】Reverse | pyre
  8. oracle包与实体包,实体oracle数据库学习
  9. win10蓝牙android上网,Win10系统如何共享安卓手机蓝牙上网(非热点)
  10. iOS 微信分享,返回自己的app 闪退
  11. 【Angular4】constructor ngOnInit
  12. 小根堆 的调整算法
  13. Spark源码走读概述
  14. Spark(火花)快速、通用的大数据处理引擎框架
  15. 服务器08r2系统怎么校时,在windows 2008 R2上建 SNTP/NTP 服务器及客户机校时设置
  16. 新手必备 | 史上最全的PyTorch学习资源汇总
  17. 【华人学者风采】俞栋 腾讯
  18. 学生在线预习行为数据分析-1
  19. 气动快速接头的常用领域和基本结构
  20. mysql存储过程-游标

热门文章

  1. 【转】: 塞尔达组在GDC2017演讲的文字翻译:显示的力量
  2. 倾国倾城游戏源码研究
  3. 基于HTML环境保护网站项目的设计与实现【 html+css+javascript+jquery+bootstarp响应式的绿化种植类公司网站模板】企业网站制作...
  4. 输入正整数n<=20,输出一个n层的倒三角形。
  5. python爬虫抓取房产_Python爬虫一步步抓取房产信息
  6. Unity 3D 碰撞体(Collider)|| Unity 3D 触发器(Trigger)
  7. bigDecimal 返回前端保留小数点后两位
  8. VSCode格式化保存HTML的标签名前(head,body,/html)自动空出一行的解决办法
  9. docker开放2375端口号
  10. Go语言_通神路之灵胎篇(5)