我试图通过将我在ASP.NET Webforms中编写的当前应用程序移植到MVC来学习ASP.NET MVC . 对于初学者,我打算使用默认视图引擎(WebFormsViewEngine)作为大多数教程/示例和我使用它作为默认值的书 .
但是,我确信我将来不想使用WebformViewEngine,一旦掌握了MVC,我想切换到另一个ViewEngine(Spark似乎很有趣)
这是一个简单的改变还是在编写新视图方面需要付出很多努力?我基本上想知道哪些会涉及更多的努力?现在学习备用ViewEngine还是稍后再切换?
3 回答
它应该像打电话一样简单
SparkEngineStarter
应该是Spark的Mvc部分中的一个类 .火花的文档实际上非常好 . 看看section on getting it to run in ASP.NET MVC
好的 - 首先,我在WebForms上投入了相当大的投资,并且凭借这一点,您将对现有表单等进行大量的用户控制 . 我相信您已经知道这本身就是这个将成为该过程中最多的工作,并且与您选择的视图引擎无关,因为即使WebForms MVC视图引擎也不直接支持用户控件 . 无论如何,这部分工作仍需要完成......
其次,你可能正在寻找一个视图引擎,它可以占用你逻辑和代码中构建的大部分其他视图(即不是用户控件),而且我指的是蜜蜂之间的东西(
<%= blah %>
) .显然,WebForms视图引擎确实支持相同的语法,但是你也说你特别喜欢知道Spark也支持
<%= blah %>
语法,这是专门为支持这样的迁移而做的 .决定之前最好的选择是观看this recent video here,看看Louis如何通过简单的基于WebForms的MVC解决方案,即使代码仍包含
<%= blah %>
语法,它仍能正常运行 .这种支持使转换变得更加容易,当您准备就绪时,您可以开始将代码转换为更推荐的使用
${blah}
语法的方式 . 但这可以按照自己的进度完成,而整体功能仍然有效 .希望有所帮助,
祝一切顺利,
罗布G.
看起来你的应用程序中可以有一个混合的视图引擎包... link
另请参阅Phil Haack中的这篇文章,其中显示了使用不同视图引擎在同一页面上渲染的局部视图 .
这将允许您简单地切换到新语法,而不需要重写所有现有视图 .