2011-02-19 96 views
0

看起來我在這裏錯過了一些東西,我無法弄清楚它是什麼。我正在使用VS2010 VB Web Project模板創建一個MVC3 VB.NET應用程序。我刪除了所有(.aspx)視圖並創建了.VBHTML Razor視圖 - 在Home文件夾下命名爲Index.vbhtml。 HomeContoller具有操作索引。當我運行該應用程序時,出現以下錯誤。如何找到MVC3 Razor(.VBHTML)視圖?

未找到'索引'或其主人的視圖。以下地點搜索: 〜/瀏覽/首頁/的Index.aspx

〜/瀏覽/首頁/ Index.ascx〜/查看/共享/的Index.aspx 〜/查看/共享/ Index.ascx 〜 /Views/Home/Index.cshtml 〜/ Views/Shared/Index.cshtml

很明顯,視圖引擎找不到.vbhtml視圖。任何人都可以請告訴我如何啓用它?相同的設置與.cshtml文件一起使用。

回答

1

您是否將Razor註冊爲ViewEngine?

protected void Application_Start() 
{ 
    // ... 
    ViewEngines.Engines.Add(new RazorViewEngine(("vb"))); 
} 
+0

我看不到智能中的RezorViewEngine()。 MSDN說有一個RazorViewEngine類。 http://msdn.microsoft.com/en-us/library/gg453829(v=vs.98).aspx。但我無法在System.Web.Mvc.dll中看到它(使用反射器)。你能告訴我我在這裏錯過了什麼嗎?我正在使用MVC3 – Spock 2011-02-19 04:49:41

0

由於您刪除了所有的.aspx,我猜測這個應用程序本來不是一個Razor應用程序?您是否在Web配置中添加了對Razor的引用?

<add assembly="System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 
+0

是的,它最初並不是一個Razor應用程序。它是一個Visual Basic ASP.NET MVC 3 Web應用程序(ASPX)。在Visual Basic下,我看不到ASP.NET MVC 3 Web應用程序(RAZOR)的模板。我也添加了你建議的配置條目,但我仍然有同樣的問題。 – Spock 2011-02-19 02:51:14

0

對不起,這是我的錯。我沒有安裝最新的MVC3,並且搞砸了一切。非常感謝。 ViewEngines.Engines.Add(new RazorViewEngine((「vb」)));指出我正確的方向。我引用的版本沒有RazorViewEngine