一、在MVC三种讲到两种后端发送数据到前端的方法,今天讲的是第三种,发送过去的方法 【强类型视图】。

1. 强类型视图,就是指在传递的过程中只能传递一种类型的数据到该视图中,就比如默认的传递的数据类型是dynamic其实该类型就是相当于一种object类型,就是指可以传递过来任何类型的值,并且去接收。

 而本篇用到的就是强类型,就是指指定一种类型的数据,比如本视图需要传递的是一张表里的数据,那么就需要传入一个表对应的类的名称过来。直接看代码示例吧:

后端代码:   注意第7行的代码,将第六行的代码换成第七行的便可

  public ActionResult ShowDetail()
{
wangjin2Entities1 db = new wangjin2Entities1();
int id = Convert.ToInt32(Request["id"]);
var userinfo = db.Userinfo.Where<Userinfo>(u => u.Id == id).FirstOrDefault();
//ViewData["userInfo"] = userinfo; //这是以往的传递的方式
ViewData.Model = userinfo; //这是强类型传递数据的方式
return View();
}

前端代码如下:   注释掉的都是以往的方式,需注意的就是第一行的代码,将本来的dynami类型换成了userinfo,并且需要导入userinfo类所在在命名空间。以及16,17行直接通过点的方式获取值

 <%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage<Userinfo>" %>
<%@ Import Namespace="MvcApplication1.Models" %> <!DOCTYPE html> <html>
<head runat="server">
<meta name="viewport" content="width=device-width" />
<title>ShowDetail</title>
</head>
<body>
<div>
<%--注释掉的都是以往传参的方式--%>
<%-- <%Userinfo userinfo = (Userinfo)ViewData["userInfo"]; %>--%>
<table>
<tr><td>账号</td><td><%--<%=userinfo.username %>--%> <%=ViewData.Model.username %></td></tr>
<tr><td>密码</td><td><%--<%=userinfo.password %>--%> <%=ViewData.Model.password %></td></tr>
</table>
</div>
</body>
</html>

MVC强类型视图,详细信息展示【五】的更多相关文章

  1. MVC 强类型视图

    MVC里面的强类型视图的确是一个很强大的东西,结合EF(Entity Framework)的话更加强大,可以直接把你的数据库直接生成强视图的增删查改的视图,在视图中所有Model的属性均动态的,我们不 ...

  2. asp.net mvc 强类型视图中传入List 数据到控制器

    问题来源: 在和一位技术老师聊天时,老师问我一个mvc 表单提交的问题,问道:怎样在表单提交的时候,将 带有 List 属性的对象传入控制器? 这时,我有点呆了,以前一直都好像是 单一属性的表单提交, ...

  3. MVC强类型视图、强类型HTML辅助方法

    强类型视图: <table> <tr> <td>ID:</td><td><%: Model.Id %></td> & ...

  4. Jmeter Ant Task如何让beanshell断言失败的详细信息展示在report里面

    首先必须给beanshell断言添加FailureMessage if(${TotalClient_SS}+2!=${TotalClient_SS2}){Failure=true;       Fai ...

  5. 安卓ListView行详细内容展示页编写和下拉刷新实现

    ListView行详细内容展示页: 使用轻量级的Fragment实现Listview行内容简单的详细信息展示: 值得注意的是: 1. 主布局(打开它的Activity)必须是FrameLayout布局 ...

  6. Asp.Net MVC 中JS通过ajaxfileupload上传图片获取身份证姓名、生日、家庭住址等详细信息

    客户要求用身份证图片上传获取身份证的详细信息就下来研究了一下(现在的客户真的懒 身份证信息都懒得输入了哈哈...),经过慢慢研究,果然皇天不负有心人搞出来了.这个借助的是腾讯的一个SKD  腾讯优图云 ...

  7. MVC 5 Strongly Typed Views(强类型视图)

    学习MVC这样久以来,发觉网站上很多MVC的视频或是文章,均是使用Strongly Type views来实现控制器与视图的交互.Insus.NET以前发布的博文中,也大量使用这种方式: <Da ...

  8. WPF中实现PropertyGrid(用于展示对象的详细信息)的三种方式

    原文:WPF中实现PropertyGrid(用于展示对象的详细信息)的三种方式 由于WPF中没有提供PropertyGrid控件,有些业务需要此类的控件.这篇文章介绍在WPF中实现PropertyGr ...

  9. 获取数据库表详细信息、存储过程、视图、的sql

    select s.[name] + '.' + t.[name] as tablename from sys.tables as t,sys.schemas as s where t.schema_i ...

随机推荐

  1. HTTPclient 4.2.2 传参数和文件流

    package com.http; import java.io.File; import java.io.IOException; import java.io.UnsupportedEncodin ...

  2. 数据库查询的数据导出到xls表,集合数据导出到xls表

    //实体类package com.outxls; public class Student { private Integer studentId; private String studentNam ...

  3. Gym 101981I - Magic Potion - [最大流][2018-2019 ACM-ICPC Asia Nanjing Regional Contest Problem I]

    题目链接:http://codeforces.com/gym/101981/attachments There are n heroes and m monsters living in an isl ...

  4. ArcGIS API for JavaScript经典例子

    地址为本地 1.绘制图形: http://localhost/arcgis_js_api/sdk/sandbox/sandbox.html?sample=toolbar_draw 2.双击编辑图形 h ...

  5. PHP计算年龄

    <?php $birthday = strtotime('1992-10-03'); $time = time();//2019-03-14; function datediffage($bir ...

  6. [iptables] 如何用iptables管理桥接模式下的设备

    场景:qemu虚拟机通过tap设备与host的物理网卡通过bridge桥接上网. 如下: [root@host100 ~]# brctl show bridge name bridge id STP ...

  7. listview添加数据

    1. 添加数据: ListView1.ViewStyle:=vsReport; ListView1.Columns.Add; ListView1.Columns[0].Caption:='aaaa'; ...

  8. windows 2008R2部署网站后出现 ‘PageHandlerFactory-Integrated’ 的解决办法

    原因:运行4.0的网站,需要用aspnet_regiis注册4.0框架,然后用4.0的Class池,就可以运行4.0的web项目了. 解决方法:1.在cmd中切换到4.0所在的目录,命令如下:cd C ...

  9. C#基础加强(3)之值、引用类型及结构体

    值.引用类型 介绍 引用类型派生自 System.Object ,而值类型均隐式派生自 System.ValueType . 其实 System.ValueType 也是继承自 System.Obje ...

  10. Linux更新时,出现无法更新锁

    1.查看软件中心是否有更新 2.重启 3.rm/var/lib/dpkg/lock 4.sudo apt-get update 5.sudo dpkg --configure -a