gpt4 book ai didi

asp.net-mvc - 如何在 Html.RenderAction (MVC3) 中发送模型对象

转载 作者:行者123 更新时间:2023-12-02 14:51:59 25 4
gpt4 key购买 nike

我正在使用 MVC3 razor,并且尝试将对象传递给部分 View ,但它不起作用。

无需将对象模型发送到局部 View 即可正常工作:

Html.RenderAction("Index", "ViewName");

尝试这不会发送模型对象,而是得到空值(对象有数据, View 需要它):'

Html.RenderAction("Index", "ViewName", objectModel);

使用 RenderAction 是否可以实现这一点?

谢谢!

编辑:我发现了错误, Controller 的操作出现错误,没有拾取发送的对象。感谢您的帮助!

最佳答案

您实际上可以使用 Action 将对象传递给 Controller ​​方法。这可以在任何可用 View 上完成,例如,我在共享库中有一个 View ,该库构建到引用我的共享项目的项目 bin 文件夹(属性 - 在 Visual Studio 中,如果 View 文件上较新,则复制)。它是这样完成的:

Controller :

public class GroovyController : Controller
{
public ActionResult MyTestView(MyModel m)
{
var viewPath = @"~\bin\CommonViews\MyTestView";
return View(viewPath, m);
}
}

MVC 页面(使用 Razor 语法):

@Html.Action("MyTestView", "Groovy", new { m = Model })

或使用RenderAction方法:

@{ Html.RenderAction("MyTestAction", "MyTestController", new { area = "area", m = Model }); }

注意:在@Html.Action()中,Model对象必须是MyModel类型,并且必须设置第三个参数到 Controller 变量名称,其中我的是MyModel mm 是您必须分配给的内容,因此我这样做 m = Model

关于asp.net-mvc - 如何在 Html.RenderAction (MVC3) 中发送模型对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8959425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com