MVC3控制器操作结果“记住”传入的标识(MVC3 Controller Action Result

2019-09-17 02:33发布

我在我的控制器两项行动的结果。 概述和关于。

public ActionResult Overview(int id)
{
    return View(new OverviewModel() { Project = db.People.Find(id) });
}

public ActionResult About(int id)
{
    return View(new AboutModel() { Project = db.People.Find(id) });
}

我想记得,在传递到概述id和使用它的关于为默认值。 我不知道如何当用户切换标签从概述到关于保持这个ID常量。

Answer 1:

您可以尝试存储TempData的标识。 也许是这样的(未测试)

public ActionResult Overview(int id)
{
    TempData["YourId"] = id;
    return View(new OverviewModel() { Project = db.People.Find(id) });
}

public ActionResult About(int? id)
{
    id = id ?? int.Parse(TempData["YourId"].ToString());
    return View(new AboutModel() { Project = db.People.Find(id) });
}


Answer 2:

您也可以使用隐藏的HTML属性,如果这个数据不敏感。 它创造了奇迹为我们救了我们很多的处理能力。



文章来源: MVC3 Controller Action Result 'Remember' Passed-in Id