2010-06-29 52 views
1

我試圖添加視圖到我的MVC項目中的任意文件夾(〜/ SomeOtherViewDirectory)。這工作正常,直到我修改視圖使用強類型。錯誤與查看外部視圖文件夾

即如果頁面從繼承System.Web.Mvc.ViewPage,它編譯並運行正常,但如果從System.Web.Mvc.ViewPage繼承它沒有。當我打開網頁編輯,它不會編譯(找不到類型),否則它拋出一個運行時異常。

我使用一個自定義視圖引擎 - 它只是標準WebFormsViewEngine定製位置字符串用於查找視圖。

關於這個有趣的是相同的(空)頁作品視圖目錄中。我可以修改我的ViewEngine指向視圖的子子目錄(比如說〜/ Views/This/Is/Weird /),然後在那裏複製/粘貼頁面,一切都可以編譯並運行。

WTH?

回答

2

對於瀏覽文件夾外的意見,我們需要修改web.config。如果您檢查了views文件夾中的web.config,您會注意到這個額外的配置,可以在這些額外的文件夾中創建一個新的web.config,或者將其添加到根web.config文件中。

<pages 
    pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
    pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
    userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> 

試試這個,並希望應該排序你的問題。

+1

感謝幫助。太糟糕的工具是這樣的rightclick->的AddItem並不比上\查看其他目錄中顯示添加視圖選項 – hackerhasid 2010-06-29 21:10:33