有没有办法确定视图是否呈现为部分?
我希望通过捕获这个来扩展我正在编写的部分的重用...并且如果需要,为视图分配适当的布局。
目前我只是在div中渲染它,但我也可以看到我们将它用作模态并且可能是它自己的页面。
(模态不应该要求任何改变,所以不用担心)
编辑: 要清理我的要求。
我想知道是否还有确定正在呈现的视图之间的区别......
/path/to/controller
和
Html.Partial("/path/to/view.cshtml")
答案 0 :(得分:5)
为什么不用@if(Layout == null)? 我仍然会为“自己的”页面推荐另一个视图并在那里设置布局。
答案 1 :(得分:1)
在您的视图中(假设Razor语法):
@if(typeof(this) == Controller.PartialView)) //code
或
@if(this is Controller.PartialView) //code
答案 2 :(得分:1)
基于@ Pheonixblade9的回应以及缺乏其他答案,目前看来这似乎不可能。我最终只是将视图的Model
绑定为bool
,并在渲染视图/部分时传递此值。