cshtml是什么,what is cshtml?

在安装了WebMatrix以后,新建立的网站,发现有文件后缀为cshtml的文件。

没google到,怀疑和shtml一样,可能属于WebMatrix在shtml基础上的扩展的版本。

【1】Razor:

必须提到Razor

Razor是ASP.NET的新的视图引擎,可以查看ASP.NET的文件,展示给用户。

ASP.NET MVC 有几个视图引擎:默认使用的是Web Form,还有Spark 和NHaml,现在增加了Razor。

使用Razor,我们可以编辑一些界面文件。例如你可以编写.aspx ,也可以编写.cshtml 和.vbhtml ,对应于C#和VB这两种语言。

是Razor特有的文件格式。

ucing “Razor” – a new view engine for ASP.NET。

ASP.NET MVC has always supported the concept of “view engines” – which are the pluggable modules that implement different template syntax options.  The “default” view engine for ASP.NET MVC today uses the same .aspx/.ascx/.master file templates as ASP.NET Web Forms.  Other popular ASP.NET MVC view engines used today include Spark and NHaml.

For example, you could write some views using .aspx files, some with .cshtml or .vbhtml files (the file-extensions for Razor files – C# and VB respectively), and some with Spark or NHaml.

【1】页后缀html、htm、shtml、shtm有什么区别,shtml是什么,cshtml是什么,what is cshtml

【2】首先介绍一下html与htm 关于HTML,HTML(HyperTextMark-upLanguage)即超文本标记语言,是WWW的描述语言。设计HTML语言的目的是为了能把存放在一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上。我们只需使用鼠标在某一文档中点取一个图标,Internet就会马上转到与此图标相关的内容上去,而这些信息可能存放在网络的另一台电脑中。

HTML文本是由HTML命令组成的描述性文本,HTML命令可以说明文字、图形、动画、声音、表格、链接等。HTML的结构包括头部(Head)、主体(Body)两大部分,其中头部描述浏览器所需的信息,而主体则包含所要说明的具体内容。 关于HTM,实际上HTM与HTML没有本质意义的区别,只是为了满足DOS仅能识别8+3的文件名而已,因为一些老的系统(win32)不能识别四位文件名,所以某些网页服务器要求index.html最后一个l不能省略。MSIE能自动识别和打开这些文件,但编写网页地址的时候必须是完全对应的,也就是说index.htm和index.html是两个不同的文件,对应着不同的地址。值得一提的是UNIX系统中对大小写敏感,不吻合的话就可能报没有文件或者找不到文件。

其次介绍一下shtml和shtm 关于shtml,shtml是一种基于SSI技术的文件,也就是Server Side Include–SSI 服务器端包含指令,一些Web Server如果有SSI功能的话就会对shtml文件特殊招待,服务器会先扫一次shtml文件看没有特殊的SSI指令存在,如果有的话就按Web Server设定规则解释SSI指令,解释完后跟一般html一起调去客户端。 关于shtm,shtm与shtml的关系和htm与html的关系大致相似,这里就不多说了。 html或htm与shtml或shtm的关系是什么 html或者htm是一种静态的页面格式,也就是说不需要服务器解析其中的脚本,或者说里面没有服务器端执行的脚本,而shtml或者shtm由于它基于SSI技术,当有服务器端可执行脚本时被当作一种动态编程语言来看待,就如asp、jsp或者php一样。当shtml或者shtm中不包含服务器端可执行脚本时其作用和html或者htm是一样的。

参考资料:

http://www.cnxhacker.com/Article/other/art/200604/5693.html

http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx

转载于:https://www.cnblogs.com/chu888chu888/archive/2011/12/12/2285374.html

给asp.net mvc小白扫盲用的相关推荐

  1. ASP.NET MVC Model元数据(五)

    ASP.NET MVC Model元数据(五) 前言 在上一篇中我们描述了应用于Model上面的各种用于显示控制的特性类,在本篇中将详细的介绍这些特性类的应用,虽然它们跟Model元数据的直接关系并不 ...

  2. ASP.NET MVC (一、控制器与视图)

    目录 前言: 1.MVC简介 2.项目创建:(这里使用工具为:Visual Studio 2019) 2.1.文件夹与文件夹介绍: 3.控制器 3.1.添加控制器 3.2.添加视图层 3.3.修改默认 ...

  3. [asp.net mvc 奇淫巧技] 04 - 你真的会用Action的模型绑定吗?

    在QQ群或者一些程序的交流平台,经常会有人问:我怎么传一个数组在Action中接收.我传的数组为什么Action的model中接收不到.或者我在ajax的data中设置了一些数组,为什么后台还是接收不 ...

  4. (转载)ASP.NET MVC多语言切换

    流程图 1.创建语言文件  创建App_GlobalResources文件夹 创建Language文件夹 创建资源文件 这些操作做完后,目录结构应该是以下这样的 我们打开每个资源文件,在里面添加一条T ...

  5. asp.net mvc + mongodb 实践

    一段是时间都在寻找一种速度快速的存储方式.在考虑使用nosql的时候是基于两个原因的,第一:可移植性,第二:快速,第三:稳定:在对比了各种非关系数据库后决定采用mongodb.至于对他的介绍在网上也不 ...

  6. Asp.Net MVC WebAPI的创建与前台Jquery ajax后台HttpClient调用详解

    1.什么是WebApi,它有什么用途? Web API是一个比较宽泛的概念.这里我们提到Web API特指ASP.NET MVC Web API.在新出的MVC中,增加了WebAPI,用于提供REST ...

  7. ASP.NET MVC 2示例Tailspin Travel

    Tailspin Travel 是一个旅游预订的应用程序示例,最新版本采用ASP.NET MVC 2技术构建,主要使用 DataAnnotations 验证, 客户端验证和ViewModels,还展示 ...

  8. Asp.net MVC中的ViewData与ViewBag

    在Asp.net MVC 3 web应用程序中,我们会用到ViewData与ViewBag,对比一下: ViewData ViewBag 它是Key/Value字典集合 它是dynamic类型对像 从 ...

  9. ASP.NET MVC Identity 兩個多個連接字符串問題解決一例

    按照ASP.NET MVC Identity建立了一個用戶權限管理模塊,由于還要加自己已有的數據庫,所以建立了一個實體模型,建立了之后,發現登錄不了: 一直顯示"Login in faile ...

最新文章

  1. vue结合Promise及async实现高效开发。
  2. gorm 返回多条数据_如何优雅的操作数据库?
  3. Nginx安装手冊以及图片server部署
  4. python根据财务指标寻找价值股票
  5. php公众号客服系统,公众号在线客服系统哪个好,主流客服系统评测及推荐
  6. 用一道面试题考察对闭包的理解
  7. Linux vi中查找字符内容的方法
  8. 软件架构设计的几点理解
  9. 原生 js 实现弹窗
  10. 芯片(架构)顶会截稿时间和开会时间记录(ISSCC、VLSI、ISCA、HPCA、MICRO、DAC等)
  11. 入选全球灯塔工厂 西部数据践行可持续发展承诺
  12. numpy一行转为一列
  13. 在线学习算法FTRL基本原理
  14. 【PostgreSQL实战】之还原备份文件
  15. 【Pandas】- pandas入门
  16. FlexRay汽车通信总线介绍及测试环境
  17. linux中mut目录,Linux 下常见文件目录及作用
  18. hexo博客fluid主题添加aplayer组件
  19. 【数据库】快速理解脏读、不可重复读、幻读
  20. Ubuntu MemoryAnalyzer 启动报错:The platform metadata area could not be written

热门文章

  1. pandas中expand的作用
  2. hexo右下角弄一个live2d的卡通动画小人
  3. 如果没有就插入,如果有就更新
  4. ubuntu16.04右键没有终端的问题
  5. 预编译头超出上限错误 就是include比较多
  6. php循环输出标题,php-如何通过循环在同一标题下分组数据
  7. Spring源码解析:自定义标签的解析过程
  8. 《Python入门经典》——导读
  9. LNMP_静态文件不记录日志,配置缓存
  10. 关于C#中将数字转换为指定格式