跳到主要內容

Visual Studio 2008中文版如何使用ASP.Net 3.5 MVC beta的專案

最近公司要改用.Net Framework,正好也來摸一下,上個月才推出的ASP.NET MVC beta。
這邊有MSDN的介紹
http://msdn.microsoft.com/zh-tw/magazine/cc337884.aspx
MVC這個Pattern已經行之有年,微軟的開發工具,直到最近才算是將之真正納入其中。
由於目前還在beta階段,所以下載回來安裝後,測試結果,並不直接支援Visual Stduio 2008中文版。但是,新增的專案範本是可以正確執行的。
我所謂的「不直接支援」,指的是,當我要新增Controller, Model, View項目的時候,並無法找到相對應的類別範本。
看來是安裝的時候,AspNetMVCBeta-setup.msi 沒有將.vstemplate安裝到正確的地方。我想正式版推出的時候應該會解決這個問題吧!

不過,無論如何,使用中文版又想嚐鮮的話,要怎麼辦呢?
其實很簡單,如果使用C#開發的話
只要在安裝目錄下找到
\Common7\IDE\ItemTemplates\CSharp\Web\MVC\1033
將底下的檔案複製到
\Common7\IDE\ItemTemplates\CSharp\Web\1028

依此類推,用VB者,也可以在\Common7\IDE\ItemTemplates\VisualBasic 路徑下找到上述檔案

然後執行 "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe" /setup
算是欺騙Visual Studio 2008 吧!

這樣就可以在新增項目的時候,看到Web MVC Controller, Model, View的項目了

留言

這個網誌中的熱門文章

終於搞懂了,預編譯頭文件(precompiled header)

預編譯頭文件 今天在改一個很大的程序,慢慢看,慢慢改。突然發現一個.c文件,裡面什麼也沒有, 就幾個頭文件,我一看,我靠,這不是把簡單的問題搞複雜了嗎,隨手刪掉那個c文件。 結果不能編譯了,我靠: fatal error C1083: Cannot open precompiled header file: \'Debug/v13_3.pch\': No such file or directory 怎麼rebuild all都不行。 上網查了一下,才搞懂了: ----------------總結------ 如果工程很大,頭文件很多,而有幾個頭文件又是經常要用的,那麼 1。把這些頭文件全部寫到一個頭文件裡面去,比如寫到preh.h 2。寫一個preh.c,裡面只一句話:#include "preh.h" 3。對於preh.c,在project setting裡面設置creat precompiled headers,對於其他 .c文件,設置use precompiled header file // 哈哈 我試了一下,效果很明顯,不用precompiled header,編譯一次我可以去上個廁所,用 precompiled header,編譯的時候,我可以站起來伸個懶腰,活動活動就差不多啦 ---------轉載的文章---------- 預編譯頭的概念: 所謂的預編譯頭就是把一個工程中的那一部分代碼,預先編譯好放在一個文件裡(通常是 以.pch為擴展名的),這個文件就稱為預編譯頭文件這些預先編譯好的代碼可以是任何的 C/C++代碼--------甚至是inline的函數,但是必須是穩定的,在工程開發的過程中不會 被經常改變。如果這些代碼被修改,則需要重新編譯生成預編譯頭文件。注意生成預編 譯頭文件是很耗時間的。同時你得注意預編譯頭文件通常很大,通常有6-7M大。注意及 時清理那些沒有用的預編譯頭文件。 也許你會問:現在的編譯器都有Time stamp的功能,編譯器在編譯整個工程的時候,它 只會編譯那些經過修改的文件,而不會去編譯那些從上次編譯過,到現在沒有被修改過 的文件。那麼為什麼還要預編譯頭文件呢?答案在這裡,我們知道編譯器是以文件為單 位編譯的,一個文件經過修改後,...

當女友升級為妻子之後

某使用者詢問: 去年,我把 [女友1.0版] 升級成 [妻子1.0版] ,我注意到新的程式開始出現意料外的狀況,如小孩製造過程佔用了相當多的空間和資源,產品手冊當中並未提及這種現象。 此外,[妻子1.0版] 會把自己裝置到其他的應用程式當中,並且當其他系統起用的時候會自行啟動,監視其他系統所進行的所有活動。諸如 [撲克牌之夜1.3] 和 [猛灌啤酒2.5] 之類的應用軟體已經無法執行,所有相關系統都被摧毀。 我考慮回復到 [女友1.0版] ,但是 un-install 卻無效,你能夠幫我嗎? ------------------------------------------------------------ 技術支援部門的回答: xx先生您好,您的問題極為常見,且通常是因為您的基本誤解而產生的。 很多人把 [女友1.0版] 升級成為 [妻子1.0版] ,認為 [妻子1.0版] 純粹只是一種利用及娛樂性質的程式。其實 [妻子1.0版] 是一種運作系統,其創造者將其設計為一種能夠執行所有任務的軟體。這個軟體,你就再也無法從系統中un-install、delete或purge她。你不可能將 [妻子1.0版] 回復成 [女友1.0版] 的。 有些人曾企圖 install [女友2.0版] ,結果卻問題比原來的系統還多。請查看您手冊當中有關[警告-贍養費/撫養孩童] 的部分。我建議你還是留住 [妻子1.0版] ,處理目前所面臨的情況就好。 我本身也 install[妻子1.0版] ,我想順便建議你閱讀整個有關 [一般性保護失誤] (General Protection Faults, GPFs) 的部分。你可以預先假設所有可能發生的責任和失誤。發生當機時,最正確的動作就是按下 [道歉] 按鈕,然後再按下 [重新開機] 鈕。只要你能夠承擔所有 [一般性保護失誤] 的罪過,整個系統就可以正常運作。 [妻子1.0版] 是個很棒的程式,但是需要你經常去維護。 ------------------------------------------------------------ 軟體部門回答: 親愛的使用者,您好! 由於「妻子1.0版」無法un-install的問題,造成許多用戶的不便,本公司軟體部門同仁深表歉意! 但由於 「妻子1.0版」 的創始用意,乃在於提供一套能夠永久...

ASP.Net MVC2 AuthorizeAttribute 的自訂用法

許多 Web 應用程式都需要使用者登入,再授權讓使用者存取受限制的內容。在某些應用程式中,對於登入使用者也可能會限制可檢視的內容或可編輯的欄位。 若要限制對 ASP.NET MVC 檢視的存取,您可以限制存取呈現檢視的動作方法。為了達成此目的, MVC 架構提供了 AuthorizeAttribute 類別。 基本上, MSDN 只有這篇 AuthorizeAttribute 類別 http://msdn.microsoft.com/zh-tw/library/system.web.mvc.authorizeattribute.aspx 還有這篇:「 ASP.NET MVC 應用程式中的動作篩選」有提到 http://msdn.microsoft.com/zh-tw/library/dd410209.aspx MSDN 範例如下,雖然使用方式很簡單,但是初學者應該會有很多疑惑;例如: 1. 掛上 [Authorize] 屬性,就可以限制使用者了嗎? 2. [ Authorize (Users = "Betty, Johnny" )] 可以用來限制特定使用,那使用者身分如何取得? 3. [ Authorize (Roles = "Admin, Super User" )] 可以用來限制角色存取,那如何給定使用者的角色身分? 4. 為何只要給字串 (Users = "Betty, Johnny" )(Roles = "Admin, Super User" ) 就有效了? 如果上述問題,對你來說,都可以回答,那基本上,你已經是很嫻熟 ASP.Net MVC AuthorizeAttribute 的機制。 public class HomeController : Controller { public ActionResult Index() { ViewData["Message"] = "Welcome to ASP.NET MVC!"; return View(); } publi...