Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 使用razor(cshtml)共享模板site.master aspx(c#)_Asp.net Mvc 3_Asp.net Mvc 2 - Fatal编程技术网

Asp.net mvc 3 使用razor(cshtml)共享模板site.master aspx(c#)

Asp.net mvc 3 使用razor(cshtml)共享模板site.master aspx(c#),asp.net-mvc-3,asp.net-mvc-2,Asp.net Mvc 3,Asp.net Mvc 2,我已将我的项目升级到mvc3,并希望保留我的所有页面并向其中添加新页面。 现在我的问题是,如果我开始使用razor,如何在view.aspx(C#)和razor视图(cshtml)之间共享我的site.master模板页面。 这是因为出于明显的原因,我不想复制母版页及其代码。不能将母版页(.master)与razor视图(.cshtml)一起使用。 它们不兼容,razor视图需要一个布局页面来实现母版页提供的功能 您可以创建与当前母版页具有相同标记的布局页。这实际上不是重复,因为它们不兼容 或者

我已将我的项目升级到mvc3,并希望保留我的所有页面并向其中添加新页面。 现在我的问题是,如果我开始使用razor,如何在view.aspx(C#)和razor视图(cshtml)之间共享我的site.master模板页面。
这是因为出于明显的原因,我不想复制母版页及其代码。

不能将母版页(.master)与razor视图(.cshtml)一起使用。 它们不兼容,razor视图需要一个布局页面来实现母版页提供的功能

您可以创建与当前母版页具有相同标记的布局页。这实际上不是重复,因为它们不兼容

或者更好的是,你可以把所有的东西都转换成razor,有一些工具可以帮助自动化这个过程。查看telerik提供的此免费工具

Scott Hanselman:

最常见的情况是有人拥有现有的WebForms (ASPX)母版页运行良好,他们现在希望包括 应用程序中很少有剃须刀页面,但不想维护两个 完全相同的母版页(一个用于ASPX,一个用于Razor)。他们 想与WebForms和Razor共享他们的WebForms管理员吗 观点


他在他的博客文章中提供了解决方案。

如果知道投票失败的原因,那就好了。。。可能已经学到了一些新的东西,并且已经修复了我在上面的答案中提供的任何错误信息。