我们如何在Asp.Net MVC中的剃刀视图中确定“IsPartial”?

时间:2015-04-23 11:51:19

标签: c# asp.net-mvc

我们如何在视图(.cshtml文件)内确定视图呈现的模式?

实际上,在视图中,例如Delete.cshtml,我将Details.cshtml称为:

@Html.Partial("Details.cshtml",model)

并且在Details.cshtml视图内部,我想确定渲染类型(完整/部分)以便为某些工作做出决定。

是否有IsPartial属性或类似内容?

1 个答案:

答案 0 :(得分:0)

您尝试实现的目标无法直接来自 Html.Partial ,但如果您使用操作转到该视图并使用 Html.Action

说你想把foo作为模型传递,先把它作为

public class Foo 
{
    public string Name { get; set; }
    public int Age { get; set; }
}

然后创建一个动作

public ActionResult Details(Foo _foo)
{
    return PartialView(_foo);
}

称之为

@Html.RenderAction("FooBar", "Controller", new { Name = "John", Age=20 });

现在通过这样做,您可以确定从其他操作调用此操作的天气

 if (ControllerContext.IsChildAction)
            return PartialView(_foo);