首页 > Web开发 > 详细

ASP.NET Razor

时间:2018-06-26 14:50:19      阅读:202      评论:0      收藏:0      [点我收藏+]

  我的工作方向c#,但我本来学的是java,接触第一个项目的时候发现项目文件是以.cshtml结尾的,那么问题来了,.cshtml是什么文件?它跟.html有什么关系?

cshtml是Razor在c#中文件的拓展名,要学习Razor,先了解以下几个问题:

 

1:什么是ASP?

?ASP:Active Server Pages(动态服务器页面)

是MicroSoft公司开发的服务器端脚本环境,可用来创建动态交互式网页并建立强大的web应用程序。当服务器收到对ASP文件的请求时,它会处理包含在用于构建发送给浏览器的HTML(Hyper Text Markup Language,超文本置标语言)网页文件中的服务器端脚本代码。除服务器端脚本代码外,ASP文件也可以包含文本、HTML(包括相关的客户端脚本)和com组件调用。

?ASP 是在 IIS 中运行的程序

?ASP 文件与 HTML 文件类似

?ASP 文件可包含文本、HTML、XML 和脚本

?ASP 文件中的脚本可在服务器上执行

?ASP 文件的文件扩展名是 ".asp"

?ASP与HTML的区别:

当浏览器请求某个 HTML 文件时,服务器会返回这个文件;

当浏览器请求某个 ASP 文件时,IIS 将这个请求传递给 ASP 引擎。ASP 引擎会逐行地读取这个 ASP 文件,并执行文件中的脚本。最后,ASP 文件将以纯 HTML 的形式返回到浏览器。

2:什么是ASP.NET?

?ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。

?ASP.NET 是一种服务端脚本技术:能够使(嵌入网页中的)脚本由Internetserver运行。

?ASP.NET 支持三种不同的开发模式:
Web Pages(Web 页面)、MVC(Model View Controller 模型-视图-控制器)、Web Forms(Web 窗体)

?ASP.NET 与经典 ASP 是不兼容,但 ASP.NET 可能包括经典 ASP。

?ASP.NET 具有更好的语言支持,有一大套的用户控件和基于 XML 的组件,并集成了用户身份验证。

?ASP.NET 页面的扩展名是 .aspx ,通常是用 VB (Visual Basic) 或者 C# (C sharp) 编写。

?在 ASP.NET 中的控件可以用不同的语言(包括 C++ 和 Java)编写。

 


 

 

好了,现在可以讨论一下什么是ASP.NET Razor了?

1:概述:

?Razor 是一种同意您向网页中嵌入基于server的代码(Visual Basic和 C#)的标记语法。就像是一种server代码和HTML代码混写的代码模板。类似于没有后置代码的.aspx文件。

?Razor支持两种文件类型,各自是.cshtml和.vbhtml,当中.cshtml 的server代码使用了c#的语法,.vbhtml的server代码使用了vb.net的语法。  

?Razor的发布是和MVC一起的,作为MVC的视图模板引擎。

?在ASP.NET MVC模式中,我们的视图引擎选择有两种:ASPX(ASP.NET),Razor。

?工作:当网页被写入浏览器时,基于server的代码可以创建动态内容。在网页载入时,server在向浏览器返回页面之前,会运行页面内的基于server代码。因为是在server上运行。这样的代码能运行复杂的任务。比方訪问数据库。


2:语法:

      Razor 代码块包含在 @{ ... } 中
      内联表达式(变量和函数)以 @ 开头;
      代码语句用分号结束;
      变量使用 var 关键字声明;
      字符串用引号括起来;
      C# 代码区分大小写;
      C# 文件的扩展名是 .cshtml
例:

 1 <html>
 2 <body>
 3 <!-- Single statement block 单语句块--> 
 4 @{ var myMessage = "Hello World"; }
 5 <!-- Inline expression or variable 内联表达式或变量-->
 6 <p>The value of myMessage is: @myMessage</p> 
 7 <!-- Multi-statement block 多语句块-->
 8 @{
 9 var greeting = "Welcome to our site!";
10 var weekDay = DateTime.Now.DayOfWeek;
11 var greetingMessage = greeting + " Here in Huston it is: " + weekDay;
12 }
13 <p>The greeting is: @greetingMessage</p>
14 </body>
15 </html>

补充:@{}就类似于.aspx中的<%%>

 

总结:Razor这种标记语法就是将server代码嵌入到html里面,在ASP.NET MVC中使用。

在项目中的使用之后再整理

ASP.NET Razor

原文:https://www.cnblogs.com/rulasann/p/9228983.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!