2011-05-22 41 views
3

我有一個標準的ASP.NET MVC3應用程序。在_ViewStart.cshtml中,我曾經有:從另一個文件指定佈局導致編譯錯誤(ASP.NET MVC3/Razor)

@{ 
    Layout = "~/Views/Shared/_Layout.cshtml"; 
} 

一切正常,生活很好。現在,我想將佈局移動到可在運行時修改的目錄中;是這樣的:

@{ 
    Layout = "~/Content/Themes/" + SomeClass.FolderName + "_/Layout.cshtml"; 
} 

(如果可能我會叫我的代碼SomeClass.FolderName = "blah"

粘貼的老Shared/_Layout.cshtml進入副本由SomeClass.FolderName指定的目錄中不幸給了我幾個編譯錯誤,如ViewBagUrlHtml不存在(但奇怪的是,User.Identity仍然可以訪問)。

我錯過了什麼,我該如何做這項工作?

編輯:基於this question,我貼我的web.config從/瀏覽次數進入的目錄,它似乎工作 - 但所引用的CSS文件給了我一個404(例如{} SomeClass.FolderName /的site.css)。

+0

有一個具體錯誤:'名稱'ViewBag'在當前上下文中不存在' – ashes999 2011-05-22 12:33:38

回答