首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在Controller和Forms之间跳转时的MVC保留模型

在Controller和Forms之间跳转时的MVC保留模型
EN

Stack Overflow用户
提问于 2017-01-07 04:34:38
回答 1查看 24关注 0票数 1

因此,我最近在.net MVC中启动了一个项目,在保存数据时遇到了一些问题。我在某处读到,为了做到这一点,你必须来回传递模型。我试过这样做,但仍然遇到问题。在我的项目中,我现在有两个按钮,getData和getData2。我的视图打印它们的true/false值。当我按下其中一个,它变成真,但如果我按下另一个,它变成真,而另一个变成假。如果我同时按下它们,我希望它们都保持正确。

控制器:

代码语言:javascript
代码运行次数:0
运行
复制
[HttpPost]
public ActionResult GetData(TestSite.Models.FarModels theFars)
{      
    theFars.HasData = true;
    return RedirectToAction("FarCalc",theFars);             
}

[HttpPost]
public ActionResult GetData2(TestSite.Models.FarModels theFars)
{
    theFars.HasData2 = true;
    return RedirectToAction("FarCalc", theFars);
}

[HttpGet]
public ActionResult FarCalc(TestSite.Models.FarModels theFars)
{                                
    return View(theFars);
}

查看:

代码语言:javascript
代码运行次数:0
运行
复制
@using (Html.BeginForm("GetData", "Home", FormMethod.Post))

   {

    //@Html.TextBoxFor(model => model.FarValue)

    <input type="submit" value="GetData" />
}

@using (Html.BeginForm("GetData2", "Home", FormMethod.Post))

{

    //@Html.TextBoxFor(model => model.FarValue)

    <input type="submit" value="GetData2" />
}

@Model.HasData
@Model.HasData2

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-01-07 06:00:43

您需要使用TempData对象,因为使用RedirectToAction会返回状态代码302,而模型绑定并不存在。下面是一个很好的例子。

https://www.codeproject.com/Tips/842080/How-to-Persist-Data-with-TempData-in-MVC

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41513907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档