2011-01-12 111 views
3

我有一个ASP.NET MVC 2网站,我已经升级到MVC 3.我不觉得很容易新的Razor视图与我的老ASPX视图共存。我找到了一些文章,但是我没有提出任何建议,而且看起来没有多少人成功地做到这一点。如何从ASPX转换到ASP.NET MVC 3中的剃须刀视图引擎?

微软做出了什么让更容易将Razor支持添加到升级的MVC 2应用程序?

+1

这里基本上是同样的问题:http://stackoverflow.com/questions/4644698/how-to-download-razor-view-engine/4652007 – Buildstarted 2011-01-12 22:33:44

回答

0

我没有这样做我自己,但是在this post由Scott Guthrie的,有这个截图:

Razor View Engine

鉴于在视图中存在此设置,这意味着您可以使用具有多个视图不同的视图引擎。这意味着您应该能够像平常一样运行现有代码,但使用Razor添加新视图。

您可以随时使用新项目对此进行测试,并尝试添加两个视图 - 一个使用ASPX,一个使用Razor。如果一切正常,请尝试将测试项目分散到现有项目(特别是项目和.config文件)。

0

以下步骤为我工作。

  1. 默认创建基于MVC 3剃须刀支持另一个临时项目
  2. 比较的临时工程的引用,web.config文件(主要一个又一个的意见文件夹下)与我自己的项目。在这里我找到了对System.Web.Helpers & System.Web.Webpages的引用。 web.config文件中也存在类似的提示。只需将临时项目中的这些部分复制到您的项目中即可。
  3. 复制从临时项目的_ViewStart.cshtml文件到您的项目(查看文件夹下)
  4. 复制从临时项目到项目的_Layout.cshtml文件(在视图\共享文件夹)
  5. 同时检查内部_layout。 CSHTML。它可能引用了其他部分视图,jQuery(js文件)等。确保它们都存在于您自己的项目中。
  6. 就是这样。编译和所有应该设置正确。