我们知道,Razor语法中我们可以直接使用@if(){}等代码段,这使得.net程序员在写模版时更容易了.

对比如下:

语法名称

Razor 语法

Web Forms 等效语法

代码块(服务端)

@{ int x = 123; string y = "test."; }

<% int x = 123; string y = "test."; %>

表达式

encode:<p>@model.Message</p>

no encode:<p> @Html.Raw(model.Message) </p>

encode:<p><%:model.Message %></p>

no encode:<p><%= model.Message %></p>

结合文本和标记的循环

@foreach(var item in items)

{

  <p>@item.Prop</p>

}

<% foreach(var item in items)

{ %>

  <p><%:item.Prop %></p>

<% } %>

代码和文本混合

@if (foo) { <text>Plain Text</text> }

@if (foo) { @:Plain Text is @bar }

<% if (foo) { %> Plain Text <% } %>

服务器端注释

@* This is a server side multiline comment  *@

<%-- This is a server side multiline comment --%>

调用一个方法

@(MyClass.MyMethod<AType>())

使用括号来明确表达是什么.

 

混合表达式和文本

Hello @title. @name.

Hello <%: title %>. <%: name %>.

总结:从程序员的角度去看Razor语法看上去比aspx更简洁一些.

但是从一个前端的角度去看呢?

Razor语法完全看不懂,这他妈的是个毛啊!改哪呢?!而ASPX语法哪能改,哪不能改,一看就懂.

前端的工作在模版中占90%以上.而后端只占不到10%.

MVC的核心点在于前端和后端的分离,说白了,一件事分成两个人做.

如果你懂压力测试,可以试试最新的MVC5.WEBFORM每秒请求达到1500左右,
而MVC5最高只有200,MVC现阶段只适合做中小企业开发,要走的路还很长.
作为一个项目经理,一般都是自已实现MVC,
因为对我来说写一个MVC架子并不难,只要重写httpFactory和httphandler就可以了. 
 
 

从项目经理的角度看.net的MVC中Razor语法真的很垃圾.的更多相关文章

  1. 提醒你一下, 你真的很垃圾, 创建一个maven 的web 项目都忘记了

    1. 创建项目 2. 选择maven 项目 3  然后选择创建 web 项目的模板  (结尾是webapp 的) 4. 选择自己的maven 的配置文件 setting.xml  以及自己的maven ...

  2. 3、看源码MVC中的Controllr的Json方法

    无论ViewResult还是JsonResult都继承ActionResult,ActionResult里只有一个方法ExecuteResult 1.Controllr的Json方法 实际上是new ...

  3. 程序员,不要让自己做兔子(updated) 网上最近流传的一个笑话,关于兔子,狼还有一只老虎的,故事 我就是想打你了,还需要什么理由吗?谁让你是兔子 项目经理是这样当的

    程序员,不要让自己做兔子(updated) 前段时间和一个朋友聊天,酒席间向我抱怨他那段时间的郁闷:项目经理从客户那里拿来一个需求,实际上就是一个ppt描述,我这个朋友拿过来看后刚开始不觉得什么,一个 ...

  4. IT项目经理都需要具备哪些能力

    发布时间:05-2009:24优质原创作者 项目经理是IT行业中比较常见的职位,工作职责主要包括三个方面,其一是资源整合任务:其二是沟通协调任务:其三是保障项目的时间周期. 资源整合能力是项目经理的重 ...

  5. [项目实施失败讨论Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn)

    [Case] “凭心而论,在这家公司很敬业的工作了3年多,老板最后给我下的评语,大家都看看吧,千万别和我走同一条路!”(摘自csdn) 原文:http://community.csdn.net/Exp ...

  6. 从备考PMP到与项目经理同呼吸

    前言 PMP是什么梗? 项目管理专业人士资格认证.它是由美国项目管理协会(Project Management Institute(PMI)发起的,严格评估项目管理人员知识技能是否具有高品质的资格认证 ...

  7. 推荐一本写给IT项目经理的好书

    原文地址:http://www.cnblogs.com/cbook/archive/2011/01/19/1939060.html (防止原文作者删除.只能拷贝一份了) 推荐一本写给IT项目经理的好书 ...

  8. 向java高级工程师和项目经理的道路进发【转】

    转自https://www.cnblogs.com/ahudyan-forever/p/5263296.html 宏观 一. JAVA.要想成为JAVA(高级)工程师肯定要学习JAVA.一般的程序员或 ...

  9. 项目管理心得:一个项目经理的个人体会、经验总结(zz)

    本人做项目经理工作多年,感到做这个工作最要紧的就是要明白什么是因地制宜.因势利导,只有最合适的,没有什么叫对的,什么叫错的,项目经理最忌讳 的就是完美主义倾向,尤其是做技术人员出身的,喜欢寻找标准答案 ...

随机推荐

  1. java系列--集合

    ==比较地址,equals比较内容 一.常用集合框架: 1.List结构集合类:ArrayList类: LinkedList类:addFirst( ),addLast( ),remove( ), Ve ...

  2. 【蓝牙数据采集模块】-02-Sensor Controller 编写CC2650STK外设驱动

    上次说到把所有的传感器模块在Sensor Controller中实现读写,并封装驱动. 先来看一下CC2650STK的原理图 用红色方框标记的DIO_0~DIO_7, DIO_23~DIO_30是可以 ...

  3. jq hide show

    var $ = function (id) { return document.getElementById(id); } //返回dom元素的当前某css值 var getCss = functio ...

  4. endnote 使用方法

    选择需要的期刊格式,复制到收藏夹. 下载安装插件. 鼠标放在需要插入引用的地方. 关键词搜索文献,记得在这之前要把需要的文献保存至endnote online.然后insert就行了.初次安装可能会有 ...

  5. Oracle优化:千万级大表逻辑判断的累赘

    insert into pntmall_point_detail(PNTMALL_PNT_ID,PNTMALL_PNT_DT,PNTMALL_VALIDITY,PNTMALL_LASTUPDATEDT ...

  6. Java 原型模式

    http://www.cnblogs.com/itTeacher/archive/2012/12/02/2797857.html http://www.cnblogs.com/java-my-life ...

  7. Bootstrap入门(十九)组件13:页头与缩略图

    Bootstrap入门(十九)组件13:页头与缩略 1.页头 2.默认的缩略图 3.自定义缩略图 页头组件能够为 h1 标签增加适当的空间,并且与页面的其他部分形成一定的分隔.它支持 h1 标签内内嵌 ...

  8. Oracle基础学习(二)v$session中Command的数字含义

    v$session中Command的数字含义. 1 CREATE TABLE 2 INSERT 3 SELECT 4 CREATE CLUSTER 5 ALTER CLUSTER 6 UPDATE 7 ...

  9. 使用JAVA开发微信公众平台(一)——环境搭建与开发接入

    一. 初始微信公众平台 微信公众平台,即我们平时所说的"公众号",曾用名"官方平台"."媒体平台",但最终命名为"公众平台&quo ...

  10. c#中读取数据库bit布尔字段数据转换Int和bool时的错误

    数据库里bit这个布尔类型的字段,非常实用,但是在c#里读取时,许多人喜欢犯一些错误,导致运行报错. 实际中,有效的正确读取方法只有以下两种: int xxx= Convet.ToInt16(read ...