MVC中,在Controllers查询到数据,返回一个实体给View并显示,可以用@Html.DisPlayFor(model=>model.newsName)和 @Model.newsName这两种方式显示某个字段数据(如newsName),但是,这两者是用区别的,即如果Controllers中没有查询到数据,则会返回一个值为null的实体(当然你可以进行判断,不返回null到view中),用 @Model.newsName这种方式显示的话会报错。下面我就用一个实例来演示一下:

Controllers 代码:

public ActionResult Details(string id)
{newsInfo newsCont=new newsInfo();int nid = Convert.ToInt32(id);if (!string.IsNullOrEmpty(id)){       newsCont = db.newsInfo.Find(nid);  //如何查不到数据,则db.newsInfo.Find(nid)返回值为null}else{        Response.Redirect("/News/");    }return View(newsCont);
}

Views 代码:

@model MvcWeb.Models.newsInfo<div class="rContent fl"><div class="cName fw tac">@Html.DisplayFor(model => model.newsName)</div>  <!--@Html.DisplayFor方法--> <div class="cTime tac">阅读数:@Model.reads 发布时间:@Model.inDate</div>   <!--@Model.reads方法--> <div class="content fl">@Model.newsContent</div>
</div>

运行程序,我故意给一个数据库表中不存在的id,报错如下图:

从上图报错地方(红色部分)可以看出用 @Model.newsName这种方式显示的话会报错!所以用@Html.DisPlayFor(model=>model.newsName)可以避免!

至于个中原因,我还不甚明白,各位大神也可以指教一下。

摘自:http://www.cnblogs.com/qk2014/p/3994384.html

转载于:https://www.cnblogs.com/ChineseMoonGod/p/6942563.html

MVC中@Html.DisPlayFor(model=model.newsName)和 @Model.newsName的区别相关推荐

  1. mvc中的mvc分别指什么_什么是MVC,它像三明治店吗?

    mvc中的mvc分别指什么 by Adam Wattis 通过亚当·沃蒂斯(Adam Wattis) 什么是MVC,它像三明治店吗? (What is MVC, and how is it like ...

  2. 在Asp.Net MVC中实现RequiredIf标签对Model中的属性进行验证

    在Asp.Net MVC中可以用继承ValidationAttribute的方式,自定制实现RequiredIf标签对Model中的属性进行验证 具体场景为:某一属性是否允许为null的验证,要根据另 ...

  3. MVC 中的Model对象

    创建--前台表单数据提交到Controller @model MVC_plug.Models.Students@{ViewBag.Title = "Create"; }<h2 ...

  4. 【18】ASP.NET Core MVC 中的 Model介绍

    ASP.NET Core MVC 中的 Model 在本视频中,我们将通过一个示例讨论 ASP.NET Core MVC 中的 Model. 我们希望最终从 Student 数据库表中查询特定的学生详 ...

  5. MVC中Model BLL层Model模型互转

    MVC中Model BLL层Model模型互转 一. 模型通常可以做2种:充血模型和失血模型,一般做法是模型就是模型,不具备方法来操作,只具有属性,这种叫做失血模型(可能不准确):具备对模型一定的简单 ...

  6. Spring MVC中的Model, ModelMap, 和ModelAndView

    1. 概述 在本文中,我们将介绍由弹簧MVC提供的核心组织弹簧框架,组织弹簧框架.. 2. Maven依赖关系 让我们从pom.xml文件中的弹簧上下文依赖关系开始: <dependency&g ...

  7. mvc中js是如何调用HTML的,MVC中javascript直接调用Model

    最近做一个统计页面, Model从后台已经获取了数据集合,想直接在前台展示,而这个展示是需要用js生成图表的. 控制器部分代码: public ActionResult Index() { var m ...

  8. 如何在ASP.NET MVC中实现提交若干个某模型的数据(某Model的List或ICollection,大小不定)

    背景说明 在ASP.NET MVC中,有一个我们经常使用且十分好用的功能--模型绑定. 即在页面中指定该页面将会使用到的数据模型Model,然后在"显示数据"或"提交数据 ...

  9. 我要学ASP.NET MVC 3.0(八): MVC 3.0 传递和保存你的Model

    概述 在 ASP.NET MVC 框架中,模型(Model)是负责核心应用程序或业务逻辑的应用程序部件. 模型对象通常从诸如 SQL Server 之类的永久存储区(如数据库)中访问数据,并对该数据执 ...

最新文章

  1. Java获取正在执行的函数名
  2. openssl passwd之openssl命令详解
  3. solr源码分析之solrclound
  4. [vue.js]Invalid options in vue.config.js: publicPath is not allowed
  5. 前端学习(1159):对象结构02
  6. 机器学习自主解决安全威胁离我们还有多远?
  7. ROS服务中存在string类型变量,如何给string类型变量赋值及取值
  8. JeeWx 捷微 2.1 发布,微信管家平台
  9. php动态交叉表,PHP Array交叉表实现代码
  10. ACL2021最佳论文出炉,来自字节跳动
  11. Hadoop大数据开发整体思路
  12. GPS章节要义(补充计算题)
  13. vivado快速下载及解压安装教程
  14. 计算机专业英语prototype,[听单词] 计算机专业英语词汇音频72,计算机英语单词MP3...
  15. SpringBoot 生成带水印pdf | 中文字体问题
  16. 中国ROHS 2.0 ---sj/t 11364-2014
  17. 项目工作量估算的专家法
  18. Vue中el-dialog的用法
  19. JAVA之简陋打地鼠(监听事件的练习)
  20. 运行结果是随机数——我帮你解决

热门文章

  1. centos5 安装python 需要的rpm包
  2. php xss 实例,php - 关于sql注入和xss的具体实例分析
  3. python内核死亡的原因_Python xgboost:内核死亡
  4. 电脑要什么配置好_收藏好!设计专业学生电脑配置推荐
  5. 矩阵的Cholesky分解
  6. 涉密专用服务器审计系统,国产专用服务器主机审计
  7. java 执行class顺序_java – @BeforeClass和inheritance – 执行顺序
  8. java 不兼容类型_java – 不兼容的类型和新鲜的类型变量
  9. 1 数列分块入门_线性代数入门——关于分块矩阵的典型证明题与综合题
  10. 红外倒车雷达原理图_汽车里的毫米波雷达你知多少?