Asp.net-Mvc-3

MonoDevelop 和 MVC3 (OS X) 上的“.. 必須從 WebViewPage 或 WebViewPage<TModel> 派生”

  • October 19, 2012

我正在嘗試讓一個 MVC 3 Razor 項目與 MonoDevelop 一起使用。

我使用 Mono 2.10.9 / MonoDevelop 3.0.4.7 創建了一個新的 ASP.net MVC 2 項目,並將以下 DLL 從現有的基於 Windows 的 MVC3 項目複製到 Mono 項目的“bin”目錄:

System.Web.Helpers.dll
System.Web.Razor.dll
System.Web.WebPages.Deployment.dll
System.Web.WebPages.dll
System.Web.WebPages.Razor.dll

已將項目設置為使用 Mono / .NET 4。預設索引文件已被刪除並替換為 Index.cshtml 文件。當我執行項目時,出現以下錯誤:

The view at '~/Views/Home/Index.cshtml' must derive from WebViewPage, or WebViewPage&lt;TModel&gt;.

奇怪的是,我之前經歷過這個過程並且 MVC 3 頁面可以正常工作。只是在升級 Mono(它聲稱支持 Razor ……?)之後,它現在不再為我工作了。然而,我之前使用 MVC3 創建的項目似乎都可以在新的 Mono 版本中編譯和執行。

非常感謝有人能指出我在這些樹中哪裡可以找到一些木頭:)

如果有人確實遇到過這種情況,那僅僅是因為位於“Views”文件夾下的 web.config 文件尚未更新,因此它引用了 MVC3 Razor 組件。呃。

最簡單的做法是從現有的 MVC3 項目中複製一個。

引用自:https://stackoverflow.com/questions/12971511