關於部落格
- 一起墮落吧
  • 71630

    累積人氣

  • 8

    今日人氣

    0

    追蹤人氣

Build your website with M$ MVC Beta-Views

舊版的Preview就不提了,因為很多很多東西各版本間是不能共通的,因為他ㄋㄟㄋㄟ的在剛入門就被搞到,所以希望看到這篇文章的後人不要再跟我一樣苦命的下載了一堆不能build的project(除非你很有耐心的把版本間不相容的部分修改完)。 在ScottGu大大大的部落格中有提到這次改版的幾個重點,東西不多,但是因為小弟比較笨,要花很多時間去一個一個弄懂,所以人家一篇搞定的東西,我這邊可能要分粉多篇才寫的完。

Add View的功能選單。

可以在Web專案的Views資料夾或是Controllers的資料夾、Controllers的cs檔案編輯區上,按右鍵,直接按Add View,然後就可以快速的新增一個View的aspx檔案,如下圖。

圖一圖二

圖一是在方案總管的地方新增View,圖二是在Controller的編輯區塊新增。兩者的差別在於當你在方案總管新增的時候,ViewPage會建立在你右鍵按下去的那個資料夾節點裡面。但若是透過Controller的編輯區內某個Action的程式區塊中點選新增View,系統則會自動幫你建立/對照資料夾去建立View。 假設你在MyController.cs內的HellowWorld程式碼區塊中Add View,VS2008會自動在該Web專案的Views資料夾內新增一個My的資料夾,並且新增一個HellowWorld.aspx檔案。若My資料夾已存在,則會自動把HellowWorld.aspx新增在My資料夾內。這是一個應該老早就要有的功能....以前每次在mapping action的時候總是要找資料夾找半天,還會因為資料夾或是aspx檔名打錯而看到該死的黃黃500畫面。

此外,在Add View的第二個動作中,會讓苦命的user選擇該View所使用的Master Page以及是否要使用強型別(strongly-typed)。 所謂的強型別就是說當你在VS2008下編輯aspx檔案的Html時,若使用程式碼區塊,可以跟在編輯cs檔案的時候一樣,當使用某個自訂型別的時候,會跳出候選成員選單(intellisense)。 不過如果你在新增的時候沒有選強型別,但是後來又想用的時候怎麼辦咧?粉簡單,只要在這個View的cs檔案中,繼承View的那個地方後面給他Type就好了,例如我要把MyModel這個型別綁在View上,只要像下面這個畫面一樣key上MyModel就可以用哩。
BUT!!!不曉得是因為中文版的VS2008不支援還是小弟資質過於駑鈍,我不管怎麼弄都還是要key上完整的類別(ex:MyProject.MvcWeb.Models.MyClass)才不會跳出警告.....。

在M$的MVC架構下,是有點捨棄了原本的CodeBehind,也就是不做PostBack,改為直接Post到某個Action。在View的部分,原本的WebForm改為使用HtmlHelper所幫你產生的一般的HtmlForm。


看起來,感覺有點多餘,這樣還不如用原本的Html宣告一個<form>比較省事.....。

好了,有點懶,先花點時間多研究研究再來繼續寫好了,避免有錯誤的資料流出來誤人子弟。

相簿設定
標籤設定
相簿狀態