天天看點

給asp.net mvc小白掃盲用的

cshtml是什麼,what is cshtml?

在安裝了WebMatrix以後,建立立的網站,發現有檔案字尾為cshtml的檔案。

沒google到,懷疑和shtml一樣,可能屬于WebMatrix在shtml基礎上的擴充的版本。

【1】Razor:

必須提到Razor

Razor是ASP.NET的新的視圖引擎,可以檢視ASP.NET的檔案,展示給使用者。

使用Razor,我們可以編輯一些界面檔案。例如你可以編寫.aspx ,也可以編寫.cshtml 和.vbhtml ,對應于C#和VB這兩種語言。

是Razor特有的檔案格式。

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

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是一樣的。

參考資料:

<a href="http://www.cnxhacker.com/Article/other/art/200604/5693.html">http://www.cnxhacker.com/Article/other/art/200604/5693.html</a>

<a href="http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx">http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx</a>