1
34
不幸的是,没有。母版页是ASPXWebForms视图引擎的一部分,而不是MVC框架,因此Razor无法与之交互。 一种选择是复制主控页,正如您所提到的,但是您不必复制所有代码,而是可以将主控页分解为Razor和ASPX主控页可以嵌入的一组ASPX部分。然后,您可以开始将每个页面和部分逐个转换为Razor,并最终摆脱ASPX主控形状。 |
2
25
实际上有一种方法可以做到这一点。斯科特·汉斯曼有一篇关于这个主题的博客: http://www.hanselman.com/blog/MixingRazorViewsAndWebFormsMasterPagesWithASPNETMVC3.aspx 这有点刻薄,但可行。我认为所描述的方法可以进一步封装和清理,这样您就可以构建视图和控制器,而不必担心事情是如何连接在一起的。 |
3
8
我认为您需要在共享文件夹中查找\u layout.cshtml… 以下是ASPX和Razor View引擎之间的比较… 这也是一个有趣的帖子关于嵌套母版页与剃须刀… 高温高压 |
4
2
在MVC中支持.NET用户控件MVC不正式支持.NET用户控件,但您可以检索它们生成的HTML。 下面的代码从一个由几十个ascx文件组成的页面中检索生成的HTML。
代码示例:
|
5
1
我刚刚经历了这个过程,我发现 this method by Matt Hawley 干了一顿饭 此方法通过创建使用所需母版页的标准ASPX页来工作。然后可以根据需要添加内容占位符。然后使用要使用的视图的名称调用renderpartial。然后,来自控制器的响应被传递到要呈现的实际视图。 要使这个工作需要更多的管道,并且您必须调用一个扩展方法来在控制器中呈现视图,但是一旦您设置了它,它就会很好地工作。 |
6
0
在Razor中,您可以使用布局页面实现相同的功能。 |