时间:2017-03-08

_ViewStart有局部和全局之分,如果在Views根目录下则是全局,如果在Views的子文件夹下则是局部的。

<b>int?</b>:表示可空类型,就是一种特殊的值类型,它的值可以为null,给变量(int类型)赋值为null,而不是0,防止未给id传值的时候程序报错。

public ActionResult Welcome(int? id){ViewBag.id = id;return View();}

<b>重点:Html扩展方法的自定义</b>

强类型页面与弱类型页面

对于向前台传递数据
1.弱类型
后端:

      public ActionResult ShowCustomer(int id){//根据Id获取当前的Customer信息,并且展示到ViewCustomer customer = new Customer() { Id = id, SName = "Fnatic", Email = "1185@qq.com", Age = 21 };//弱类型,给到前端再强转到Customer类型ViewData["customer"] = customer;    //将数据给到一个容器ViewDat[]return View();}

前端:

<div>@{var customer = ViewData["customer"] as Customer;    //从ViewData[]中取出数据再装换为Customer类型。}<table><tr><td>用户名:</td><td>@customer.SName</td></tr><tr><td>年龄:</td><td>@customer.Age</td></tr><tr><td>邮箱:</td><td>@customer.Email</td></tr><tr><td>顾客编号:</td><td>@customer.Id</td></tr></table>
</div>

2.强类型
后端:

 public ActionResult Detail(int id){Customer customer = new Customer() { Id = id, SName = "Fnatic", Email = "1185@qq.com", Age = 21 };ViewData.Model = customer;      //Model获取或设置与视图数据关联的模型return View();}

前端:

<div>@{Customer customer = ViewData.Model;}<table border="1px"><tr><td>用户名:</td><td>@customer.SName</td></tr><tr><td>年龄:</td><td>@customer.Age</td></tr><tr><td>邮箱:</td><td>@customer.Email</td></tr><tr><td>顾客编号:</td><td>@customer.Id</td></tr></table>
</div>

一个页面只能有一个model
所以如果有多个model应该在后端把model放进集合,再传给前端

补充: 对于HtmlHelper方法
弱类型:@Html.TextBox("asdasd");
强类型:@Html.TextBoxFor 的使用

Asp.net MVC 学习之路-002相关推荐

  1. Asp.net MVC 学习之路-003(增删改查,后端手工,前端生成)

    时间:2017-03-09 Asp.net Mvc实现增删改查 1, 创建数据库 可参考我写的EntityFramework实现过程:http://www.jianshu.com/nb/1016674 ...

  2. ASP.NET MVC 学习之路-3

    本文在于巩固基础 到这里不得不说ASP.NET MVC一个规则:惯例优先原则 ASP.NET会假定开发人员遵循特定的规则来构建自己的程序而不是使用配置文件 ASP.NET MVC文件夹结构也遵循惯例优 ...

  3. ASP.NET MVC 学习之路-4

    本文在于巩固基础 模型绑定 从URL 获取值 public ActionResult About(int id){ViewBag.Id = id;return View();} @{ViewBag.T ...

  4. ASP.NET MVC 学习之路-5

    本文在于巩固基础 数据库开发模式: 1.数据库优先开发模式 2.模型优先开发模式 EntityFramework学习之一 最简单的一个案例 第一步创建模型 public class Student{[ ...

  5. ASP.NET MVC学习之路由篇(2)

    ASP.NET MVC学习之路由篇(2) 原文:ASP.NET MVC学习之路由篇(2) 继ASP.NET MVC学习之路由篇(1)后继续学习. 7.解决与物理路径的冲突 当发送一个请求至ASP.NE ...

  6. [ASP.NET MVC 小牛之路]04 - 依赖注入(DI)和Ninject

    特别提醒:本文编写时间是 2013 年,请根据目前 .NET 发展接收你所需的知识点. 为什么需要依赖注入 在[ASP.NET MVC 小牛之路]系列的理解MVC模式文章中,我们提到MVC的一个重要特 ...

  7. [ASP.NET MVC 小牛之路]10 - Controller 和 Action (2)

    继上一篇文章之后,本文将介绍 Controller 和 Action 的一些较高级特性,包括 Controller Factory.Action Invoker 和异步 Controller 等内容. ...

  8. ASP.NET MVC学习资料 新增几个开源项目

    ASP.NET MVC学习资料 新增几个开源项目 ASP.NET MVC MSDN API:  System.Web.Mvc Namespace (暂无中文版):  http://msdn.micro ...

  9. ASP.NET MVC学习之控制器篇

    一.前言 许久之后终于可以继续我的ASP.NET MVC连载了,之前我们全面的讲述了路由相关的知识,下面我们将开始控制器和动作的讲解. ASP.NET MVC学习之路由篇幅(1) ASP.NET MV ...

最新文章

  1. insert 语句的选择列表包含的项多于插入列表中的项_如何定义和使用Python列表(Lists)
  2. 显卡显存故障检测工具_【硬件资讯】1660super实锤!更换DDR6显存!带宽超1660ti!...
  3. dll注入工具_UnmanagedPowerShell工具分析
  4. 软件定义数据中心—Windows Server SDDC技术与实践
  5. 简单阻容降压电路图_升压降压芯片电路
  6. MAC下使用OpenSSL生成私钥和公钥
  7. Learning XNA 3.0翻译连载--序言
  8. python执行的命令_如何在Python中执行外部命令
  9. python将字典写入csv_Python如何把字典写入到CSV文件的方法示例
  10. TMS320C55x汇编语言编程
  11. 2018年视频云服务市场格局进入整合阶段,阿里云视频云位居市场竞争力领导者的位置... 1
  12. tal php x 1,20:1, PHP性能评测Base62x:内置模块 vs. 脚本模块
  13. opendir php 中文,php的opendir是什么意思?
  14. winrar5.7.1商业版 无广告 注册下载
  15. 一键获取系统特殊权限 - TrustedInstaller权限,可以直接修改hosts等系统文件
  16. 20172301 2017-2018-2 《程序设计与数据结构》第十周学习总结
  17. python字典的遍历方式:向列表一样通过索引遍历字典的值
  18. phpstudy宝塔_宝塔和phpstudy的区别
  19. matlab调和级数求和,科学网—疯狂的绝技------级数加速收敛的艺术 - 张江敏的博文...
  20. select查询之联合查询

热门文章

  1. 使用.NET中的Action及Func泛型委托
  2. Linux内核学习笔记十一——I/O层和I/O调度机制
  3. zoj——3556 How Many Sets I
  4. druid sql黑名单 报异常 sql injection violation, part alway true condition not allow
  5. ibatis调用sqlserver存储过程
  6. JBoss7官方下载最新版本
  7. 浅析:seo工程师擅长的网站数据分析
  8. 关于JAVA的参数列表传值的问题
  9. AD二次开发提示“出现了一个操作错误”的解决办法
  10. 程序员娶妻子的经典准则