gpt4 book ai didi

c# - 如何从 View 模型发布对象?

转载 作者:太空宇宙 更新时间:2023-11-03 11:24:16 26 4
gpt4 key购买 nike

我希望这会起作用 :( 调试时,隐藏的输入似乎指向一个对象,但在帖子中没有任何显示。这是我尝试过的(请注意,我只是为了简洁而尝试,所以这是一个例子)

模型

public class myViewModel
{
public MyObject MyObject { get; set; }
public int MyNumber { get; set; }
}

Controller

public ActionResult displaySimpleView()
{
var mVM = new myViewModel();
mVM.MyObject = //let MyObject be filled with 10 fields of data
return View(mVM);
}

查看

@model namespace.myViewModel

//display the fields of data

@using (Ajax.BeginForm("Complete", ajaxOpts))//simple Ajax Options not really relevant
{
@Html.ValidationSummary(true)

@Html.HiddenFor(m => m.MyObject)
@Html.EditorFor(m => m.MyNumber)

<p><input type="submit" value="Go" /></p>
}

再次 Controller

[HttpPost]
public ActionResult getMyObject(myViewModel mVM)
{
mVM.MyObject is null here.
mVM.MyNumber has a value.
return RedirectToAction("someGetAction");
}

如何将 MyObject 传递给 getMyObject?我宁愿不必为每个属性都设置一个隐藏字段然后重新映射,因为其中一些属性是嵌套对象。

最佳答案

查看:

@{
TempData["passMyObject"] = Model.MyObject;
}

Controller 职位:

var myObject = TempData["passMyObject"];

关于c# - 如何从 View 模型发布对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10020786/

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