7

我对 Razor 2.0 的条件属性功能很感兴趣,因此我尝试将 Razor 2.0 移植到我的 MVC3 应用程序中。我点击此链接并使用 ASP.NET 在 Windows 上成功运行了我的简单应用程序(一个HomeController、一个Index操作和一个*~/Views/Home/Index.cshtml视图)。

但是当我在 Ubuntu 的 mono 运行时部署我的应用程序时,它无法运行并继续报告无法找到视图的错误:

“/”应用程序中的服务器错误未找到视图“索引”或其主视图,或者没有视图引擎支持搜索的位置。搜索了以下位置:~/Views/Home/Index.aspx ~/Views/Home/Index.ascx ~/Views/Shared/Index.aspx ~/Views/Shared/Index.ascx ~/Views/Home/Index。 cshtml ~/Views/Home/Index.vbhtml ~/Views/Shared/Index.cshtml ~/Views/Shared/Index.vbhtml

这个错误我google了一下,大部分文章都说是视图编译的问题,所以我认为是mono无法正确使用新Razor引擎的编译器编译Index.cshtml引起的。

然后我将我的应用程序切换回 Razor 1.0 并且在单声道下一切正常,那么单声道无法运行 Razor 2.0 真的是个问题吗?或者有什么快速解决这个问题的方法吗?

谢谢

4

1 回答 1

4

理论上,Razor pages 与 Mono 一起使用 2.10.x 系列,但您必须将 Microsoft 的程序集与它捆绑到您的 Linux 机器中。

Mono 2.11.1开始,这些程序集现在默认捆绑在 Mono 中,因为 Microsoft 最近(2012 年3 月)开源了 Razor 。

因此,如果我是你,我会尝试 Mono 2.11.3 来查看问题是否已经在上游解决。如果没有,请在http://bugzilla.xamarin.com/中提交一个带有独立测试用例的错误以重现它,并从此处链接到该错误。

于 2012-08-26T15:56:31.910 回答