2011-08-19 56 views
1

我正在學習ASP.Net MVC的過程,我非常喜歡MVC給出的關注點分離,以及模型/視圖/控制器開發理論!ASP.NET MVC爲什麼會迴歸到經典的ASP標記?

但是,我正在使用舊的< %% html的創傷性倒敘!我很難理解這是多麼可怕的代碼和調試!

爲什麼地球上的MS開發者迴歸到那種編碼風格?

似乎ASP.Net控件在HTML標記中向前邁進了一步,但顯然我錯過了一大部分難題。

有人可以幫我理解ASP.Net WebForm風格的經典ASP風格標記對我們的好處嗎?

感謝

+0

順便說一下,您可以使用Razor而不是WebForms View Engine。 –

+0

看一看這個問題-http://stackoverflow.com/questions/381895/asp-net-mvc-reminds-me-of-old-classic-asp-spaghetti-code – ipr101

回答

1

如果你不喜歡這種語法那麼我建議你使用Razor視圖引擎(ASP.NET MVC 3)在您使用@代替<%: %>

我的猜測,爲什麼他們使用相同的語法是當它們最初開發ASP.NET MVC時可能編寫的代碼更少,並且許多用戶不必學習新的語法。現在它已經出來了,他們引入了一個新的語法,Razor視圖引擎更清晰。

+0

不錯哦!我從一本使用VS2008的舊書中學習。我會檢查剃刀。謝謝! – Scottie

1

您可以將其替換爲另一個ViewEngine,從而使您的語法更加靈活。 MVC 3現在還帶有Razor作爲另一個預先包裝的選項。要爲您選擇正確的View Engine,請查看this視頻。

+0

不默認。你需要MVC3,這是最近的版本。 –

0

我認爲基本思想是,如果框架促進視圖與基礎數據和業務邏輯之間的關注的良好分離,那麼爲您的視圖提供動態標記樣式即可。在糟糕的ASP時代,沒有什麼可以強制甚至推動這種分離,因此我們最終得到了非常非常混亂的代碼。

0

如果你發現自己偶爾的循環題外話,如果......那麼,和對象屬性訪問在您的標記,應只產生HTML的輸出,那麼你可能使用了錯誤的工具來做

許多人喜歡這樣的敏捷腳本給你。它誕生於軌道上的紅寶石嗡嗡聲。您可以使其編譯和類型安全,並且可以逐步完成編譯「代碼隱藏日」語言的所有優點。

至於asp.net/web表單。生命週期?查看狀態?不用了,謝謝!