2010-04-26 57 views
9

T4MVC使用T4MVC是很酷,但我有幾個它在我的項目集成的問題,任何幫助真的appriciated:在實際項目

  1. 我有這樣的警告,我所有的行動(我使用SnippetsBaseController作爲我所有控制器類的基類:

    警告26'Snippets.Controllers.ErrorController.Actions'隱藏繼承成員'Snippets.Controllers.Base.SnippetsBaseController.Actions'。如果隱藏是有意的,請使用new關鍵字。 C:\ projects_crisp-source_crisp \ crisp-snippets \ Snippets \ T4MVC.cs 481 32片段

  2. 是否可以定製路線的強類型的名稱,例如,我有路線定義是這樣的:

    routes.MapRoute(
         "Feed", 
         "feed/", 
         MVC.Snippets.Rss() 
        ); 
    

是否有可能取代:

<%= Url.RouteUrl("Feed") %> 

的東西如:

<%= Url.RouteUrl(MVC.Routes.Feed) %> 
  1. 強類型鏈接到靜態文件是非常酷的,但我在我的頁面使用<base />,所以我不需要任何URL處理,我可以重新定義 T4MVCHelpers.ProcessVirtualPath而不調整T4MVC.tt本身?

  2. T4MVC始終會生成與uppercased控制器和動作名稱的鏈接,例如: /Snippets/Add而不是/ snippets/add。是否可以生成它們小寫?

回答

18
  1. 你可以改變你的基礎控制器類是抽象?我認爲這會解決它。

  2. 看到這個帖子裏面討論這個:http://forums.asp.net/t/1535567.aspx

  3. 如果您在t4mvc.settings.t4看,你會看到,可以改變不接觸主.TT文件ProcessVirtualPathDefault方法。

  4. 請參閱http://forums.asp.net/t/1532057.aspx。有建議在那裏修復,雖然它還沒有提交(但你可以嘗試它)。

大衛

+2

對於(1)。切換到抽象基類有所幫助,但仍有一個警告仍然有效: 'Snippets.Controllers.SnippetsController.View()'隱藏繼承的成員'System.Web.Mvc.Controller.View()'。如果隱藏的目的是使用新的關鍵字' – artvolk 2010-04-27 15:16:16

+0

我不認爲T4MVC產生的東西叫'視圖'。你確定這不是你的基本控制器本身? – 2010-04-27 20:09:40

+2

Ahhr。它似乎不是T4MVC相關,我有行動稱爲View(),我會嘗試使用[ActionName]。感謝您回答我的快速簡單的問題! – artvolk 2010-04-27 20:42:54

相關問題