一、MVC入门:

1、MVC简介

约定大于配置

2、MVC访问流程

csthml模板(razor模板)就是简化HTML的拼接的模板,最终还是生成html给浏览器显示,不能直接访问cshtml文件。

二、Razor语法:

1、 @启动的区域为标准的C#代码,其他部分是普通的html代码

2、 用法:

a) @{string a="abc";}  @a @{代码块}   有标签就是html代码;

总结:@就是C#,<a></a> 就是html ;

如果想让被识别成html的当成C#,那就用@()

如果想让被识别成C#的当成html 就用<span></span> ,如果不想生成额外的标签,就用<text></text>

属性的值如果以“~/”开头会进行虚拟路径处理

属性值如果是bool类型,如果是false 就不输出这个属性,如果是true就输出“属性名=属性名”   <input type="checkbox"  checked="@b1" >

三、 var 匿名类型

            /*
class Myp
{
public int Age { get; set; }
public string Name { get; set; }
}
Myp p = new Myp();
p.Name = "chen";
p.Age = 12;
*/ var p = new { Name = "chen", Age = };

匿名类型的属性是只读的,匿名类型是internal 类型,无法跨程序集

四、Controller 给view传递数据的方式:

1、 ViewData :   键值对从传递数据

        public ActionResult Index()
{ ViewData["name"] = "chen"; //键值对传递
ViewData["age"]=;
return View();
}       
    <body>
    <p>
   <!--C#方法接收-->
   @ViewData["name"] <br />
   @ViewData["age"] <br />
   </p>     </body>

2.  ViewBag:  ViewBag是dynamic类型的参数,是对ViewData一个动态类型的封装,用起来更方便和ViewData共同操作一个数据。

        public ActionResult Index()
{ ViewBag.name = "chen";
ViewBag.age = ; return View();
}
    <p>
<!--C#方法接收-->
@ViewBag.name <br />
@ViewBag.age <br />
</p>

3.   Model

可以在Controller 中通过 return View(model) 赋值 ,然后在cshtml中通过Model属性来访问这个对象;

强类型视图:如果在cshtml中通过“@model”类型(注意model小写)指定类型,则cshtml中的Model就是指定的强类型,

弱类型视图: 如果没有指定“@model”类型,则cshtml中的Model就是dynamic

数据传递建议用 Model传递,并且建议用强类型

ASP.net MVC入门及Razor语法的更多相关文章

  1. ASP.NET MVC中的Razor语法

    1.Razor的基本语法 @* 多行代码时需要包含在大括号内{}和每句代码后都需要加分号; *@ @{ ViewBag.Title = "Index"; ViewBag.Name ...

  2. .Net MVC 入门之Razor语法

    Razor语法 Razor是以后MVC项目中都需要用的, 所以在学MVC的基础的时候,我们的目标:要了解熟悉Razor页面的语法结构,做到灵活使用,so我们马上开始学习Razor,也请你们多评论和推荐 ...

  3. ASP.NET MVC 入门

    ASP.NET MVC 入门 (Learning ASP.NET MVC) 传统的WebForm发展到如今出现不少的缺陷, 比如为了解决Http的无状态WebForm模式使用了ViewsState来保 ...

  4. Asp.net MVC入门视频教程

    编程开发 > Asp.net视频教程 > Asp.net MVC入门视频教程 > 1.传统web处理方式和mvc处理方式 上传日期:2014-08-16 10:02:45  相关摘要 ...

  5. (转)Asp.Net Mvc视图引擎Razor介绍

    Asp.Net Mvc视图引擎Razor介绍 1.Razor介绍 程序园原创,转载请注明:http://www.kwstu.com/ArticleView/dabaomvc_2014082408205 ...

  6. 25、ASP.NET MVC入门到精通——Spring.net-业务层仓储

    本系列目录:ASP.NET MVC4入门到精通系列目录汇总 上一节,我们已经把项目框架的雏形搭建好了,那么现在我来开始业务实现,在业务实现的过程当中,不断的来完善我们现有的框架. 1.假设我们来做一个 ...

  7. 26、ASP.NET MVC入门到精通——后台管理区域及分离、Js压缩、css、jquery扩展

    本系列目录:ASP.NET MVC4入门到精通系列目录汇总 有好一段时间没更新博文了,最近在忙两件事:1.看书,学习中...2.为公司年会节目做准备,由于许久没有练习双截棍了,难免生疏,所以现在临时抱 ...

  8. ASP.NET MVC 入门8、ModelState与数据验证

    原帖地址:http://www.cnblogs.com/QLeelulu/archive/2008/10/08/1305962.html ViewData有一个ModelState的属性,这是一个类型 ...

  9. ASP.NET MVC 入门系列教程

    ASP.NET MVC 入门系列教程 博客园ASP.NET MVC 技术专题 http://kb.cnblogs.com/zt/mvc/ 一个居于ASP.NET MVC Beta的系列入门文章,有朋友 ...

随机推荐

  1. openwrt定制管理

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qianguozheng/article/details/24673097 近期这个比較火,可是改了东 ...

  2. centos 开启http代理tinyproxy

    一.前言 就算有一些公司想到要进行压力测试也是用一些微软,官网出的一些软件,一个ip发起很多访问.等有一天黑客攻击来了发现还是顶不住.华盟君认为知此知彼才是压力测试的关键点,应当模拟黑客手法进行压力测 ...

  3. 的NodeJS异步数据库函数需要同步的答案 +

    我是新来的NodeJS和我写,需要从我去过的所有的函数应该是在这种情况下,读QUERY我的MySQL数据库,并返回代码,我非常希望服务器能够对其他事件作出回应而这个地方是轨迹查询请求.然而,它并不特别 ...

  4. EF 连接数据库 Mysql (database first ) 一个表对应一个模型

    准备工作 1.下载vs2015 2.下载mysql2017 3.安装 1.创建数据库 2. 将数据库映射成模型 3创建aspx 文件. 写下窗体内容的代码 hello_worldEntities en ...

  5. 树状数组区间修改and查询和

    在差分数组上稍加改变,就可以实现这个骚操作 首先我们先来看一看普通的树状数组(基于差分)怎么暴力的求解区间和就是询问区间长度次和 \(\sum^{i=1}_{len}\sum^{j=1}_{i}bas ...

  6. C语言文件操作类型速查

    文件使用方式 含义 "r"(只读) 为输入打开一个文本文件,不存在则失败 "w"(只写) 为输出打开一个文本文件,不存在则新建,存在则删除后再新建 " ...

  7. 【Java】对象、类(抽象类与内部类)、接口

    博文内容概况 对象和类 抽象类 接口 内部类 对象和类 对象是对客观事物的抽象,类是对对象的抽象.类是一种数据类型,其外观和行为由用户定义.类中可以设置两种类型的元素:字段(有时被称为数据成员)和方法 ...

  8. Informatica 简单使用

    1. Informatica简介 ① Repository manager 主要用来维护资料库的目录,对象,建完对象可以创建demo的folder. ② Administration Console是 ...

  9. (排班表二)后台动态绘制Grid表格

    后台动态绘制值班表(Grid表格 列名不固定) 要求:表头除了值班人姓名,还要显示日期,及每天的星期值,用斜杠‘/’分隔.即:几号/星期几 最终实现的效果:根据查询的年月显示每个值班人查询月份每天的值 ...

  10. 实例讲解如何利用jQuery设置图片居中放大或者缩小

    大家有没有见过其他网站的图片只要鼠标放上去就能放大,移出去的时候就能缩小,而且一直保持居中显示!其实jQuery提供一个animate函数可以使图片放大和缩小,只要改变图片的长和高就OK啦!但是ani ...