【发布时间】:2011-02-10 16:54:48
【问题描述】:
使用 Razor 视图引擎将 MVC 2 项目迁移到 MVC 3 的最佳方法是什么?
【问题讨论】:
标签: c# asp.net asp.net-mvc-3 razor
使用 Razor 视图引擎将 MVC 2 项目迁移到 MVC 3 的最佳方法是什么?
【问题讨论】:
标签: c# asp.net asp.net-mvc-3 razor
详情可在 ScottGu 博客的this post 中找到(请参阅如何升级现有项目部分)。我使用了MVC 3 project upgrade tool,在运行它后,我的应用程序只遇到了一些小问题。
【讨论】:
David Hayden 的博客上也有升级工具的链接:http://davidhayden.com/blog/dave/archive/2011/01/05/ASPNETMVC3TutorialsIndex.aspx
【讨论】:
Telerik 编写了一个程序来将普通的 aspx 视图转换为 razor
【讨论】:
您需要/想要迁移到 Razor 还是仅仅拥有 MVC 3?您仍然可以将您的 aspx 页面与 WebFormViewEngine 和 MVC 3 一起使用。 这就是我所做的,因为我们有一个相当大的应用程序,并且在迁移到 MVC 3 时不仅仅是几个问题。所以有一段时间我们保留了 apsx 页面并逐步将页面移动到 cshtml。
【讨论】:
学习 Razor 语法是无可替代的
我认为一些开发人员过度考虑剃须刀并使其变得更难。如果您了解 HTML、JavaScript 和 C#,只需学习一些基本语法,例如代码块
@model MyApp.Models.MyEntity
@{
// this is a code block
ViewBag.MyData = "i need to use a semicolon here";
}
<div class="myclass">
//This is inline razor/C# code that uses a
//lambda expression to access a model property:
@Html.TextBoxFor(m => m.MyProperty)
</div>
razor 引擎知道 C# 的结束位置和 HTML 的开始位置,您只需要学习一些基本规则。
编辑:我想说的是,工具并不是从 MVC 2 转换为 MVC 3 或 4 Razor 的唯一方法。转换工具并不完美。了解 Razor 语法也很有帮助。
【讨论】: