2016-09-20 69 views
3

我剛開始使用ASP.NET的工作,但目前我還不太熟悉。ASP.NET - @語法和<% %>之間的區別?

在大多數.cshtml文件中,有C#代碼塊帶有@符號,但我也看到<%%>似乎在做同樣的事情(儘管通常<%更混合在HTML代碼中)。

我在網上找到的唯一的事情是比較二是這個網站: http://haacked.com/archive/2011/01/06/razor-syntax-quick-reference.aspx/ 這是有幫助的,但似乎顯示出兩種語法形式被用於完全相同的事情。

有什麼區別?爲什麼使用一個而不是另一個?

+2

'WebForms'遠遠老舊(近15年!),並使用'<% %>'語法。 Razor更新,並使用'@ ...'語法,但它也支持舊版本。 – DavidG

+0

@DavidG發帖回覆:P – Dispersia

+0

我喜歡DavidG的回答。我補充說,我更喜歡更新的'@'語法,但我認爲哪個更好是比什麼都更重要。我更喜歡新的'@'語法,因爲它對我來說看起來更「乾淨」,但我認爲這完全是主觀的。我親自嘗試在同一個文件中保持一致性,但是在新文件中使用'@',但我並不是說哪個更好。當然,我的老闆的偏好或任何團隊標準比我的更重要。 –

回答

2

WebForms是一個非常古老的技術(將近15年)我使用<% ... %>語法。

早期版本的MVC也使用與WebForms相同的語法。稍後,MVC3發佈(2010年左右),使用新的語法語言Razor,該語言使用舊式和新的@...語法。

看到使用這兩種風格的項目有點奇怪,特別是在同一個文件中,但我的建議是堅持用任何新的Razor語法,甚至可能希望重構舊代碼的一致性。

相關問題