Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.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
Html 如何在两个单独的div标记中获得RenderBody()输出_Html_Asp.net Mvc_Razor_View - Fatal编程技术网

Html 如何在两个单独的div标记中获得RenderBody()输出

Html 如何在两个单独的div标记中获得RenderBody()输出,html,asp.net-mvc,razor,view,Html,Asp.net Mvc,Razor,View,在我的布局视图设计中有两个标签,一个用于移动视图,另一个用于桌面视图。设计是由其他人完成的,在手机和桌面上查看时会加载相应的视图。我不能改变设计,但我需要把渲染体分成几个部分,比如 <div id="main"> <div id="mobileView"> @RenderBody() </div> <div id="desktopView"> @RenderBody() </div> </div&g

在我的布局视图设计中有两个标签,一个用于移动视图,另一个用于桌面视图。设计是由其他人完成的,在手机和桌面上查看时会加载相应的视图。我不能改变设计,但我需要把渲染体分成几个部分,比如

<div id="main">
  <div id="mobileView">
    @RenderBody()
  </div>
  <div id="desktopView">
    @RenderBody()
  </div>
</div>

我不这么认为,在一个布局中渲染多个@RenderBody是一种好方法。在这种情况下,解决方法是您应该制作两个布局_LayoutMobile和_LayoutDesktop。aAt运行时应替换布局。即

@{
Layout =mobileView? "~/Views/Shared/_LayoutMobile.cshtml":"~/Views/Shared/_LayoutDesktop.cshtml";
}

实际上,当我们改变浏览器的大小时,模式是动态变化的。它是自动发生的,可能是某个地方写的脚本。那么,我该如何设置布局呢?
@{
Layout =mobileView? "~/Views/Shared/_LayoutMobile.cshtml":"~/Views/Shared/_LayoutDesktop.cshtml";
}