我有以下情况:
@model MvcApp.Models.MyAppModel
@{ ViewBag.ActionName = this.Context.Request.RequestContext.RouteData.Values["action"]; }
使用我检查过的调试器,我确信Viewbag.ActionName收到了它的值。 但是在控制器中,ViewBag始终为空。为什么?我只是在这些请求之间使用它(这意味着我总是尊重这个命令,从这个视图中我点击一个总是让我删除的动作链接。请赐教。干杯。
[HttpGet]
public ActionResult Delete(int id)
{
string actionName = ViewBag.ActionName;
您需要提出的任何细节。
答案 0 :(得分:2)
视图包中的数据仅在单个请求的持续时间内有效。但是你谈到了两个请求:第一个请求呈现页面,第二个请求处理删除操作。这就是为什么视图包最初在控制器中是空的。
答案 1 :(得分:1)
请求的流程是:首先是控制器,然后是视图。
所以答案是否定的,你在视图中做了什么,不能转移到动作/控制器。