0

我有一个 PartialView 已包含在其他两个视图中。

我如何能够将参数从 PartialView 传递到每个视图的主控制器。

@Html.Partial("_Video","file1.xml")

@Html.Partial("_Video","file2.xml")

我希望能够在每个控制器上获取 Get 方法的参数值。

        //Controller1 
        // GET: //
        public ActionResult Index(){
             "file1.xml"
        }

        //Controller2
        // GET: //
        public ActionResult Index(){
             "file2.xml"
        }
4

1 回答 1

1

刚刚自己解决了这个问题,希望对您有所帮助。

在您看来cshtml:

@Html.Action("_Video", "Controller1", new { paramValue = "some string" } )

在这种情况下,您需要创建一个名为“_Video.cshtml”的局部视图(通过 @model 指令定义正确的模型类型)并在您的控制器中:

[ChildActionOnly]
public ActionResult _Video(String paramValue) {
   // paramValue == "some string"
   // .. do something with aModel ...
   return PartialView(aModel);
}

但是,如果您想要返回 xml 或类似的数据内容,请检查视图模型容器、Web Api 或 RESTful 数据调用是否更合适(如果您从客户端脚本调用,请搜索“Json()”函数也)。

高温高压

于 2013-03-23T23:31:41.020 回答