0

我有一个 kendoUI TabStrip 小部件控件。在其中,我有两个选项卡:产品和支持。

这两个选项卡是两个不同的视图。我已经像这样定义了标签条:

<div id="tabs">
    <div>
        <iframe src="../Products/Index"></iframe>
    </div>
    <div>
         <iframe src="../Support/Index"></iframe>
    </div>                      
</div>

在脚本中:

$("#tabs").kendoTabstrip({});

然后带有各自视图页面的选项卡即将到来。但是产品和支持页面不会直接打开。我的意思是,当我在 url 栏中输入时localhost:4567/Product/Index,它不会打开页面,只有在我们选择选项卡时才会打开。

我已经为两个控制器定义了这样的动作:

[ChildActionOnly]
public ActionResult Index()
{
     return View();
}

然后当我运行主页时,它会得到一个异常,它只会被子操作调用。当我选择选项卡时,它应该成为子操作。我怎样才能纠正这个问题?我没有包括:

@Html.action("Index","Products")

如果我需要包含它,我应该在哪里添加它?希望你能理解我的问题...

4

1 回答 1

2

ChildActionOnly 属性确保动作方法只能作为视图中的子方法调用。动作方法不需要具有此属性才能用作子动作,但我们倾向于使用此属性来防止动作方法因用户请求而被调用。定义了动作方法后,我们需要创建在调用动作时将呈现的内容。子动作通常与部分视图相关联,尽管这不是强制性的

所以与其

 @Html.action("Index","Products").

你应该试试

@Html.Partial("Products").
于 2012-12-11T08:02:19.613 回答