C# 使用使用的参数重定向到MVC2中的上一页

C# 使用使用的参数重定向到MVC2中的上一页,c#,asp.net-mvc,asp.net-mvc-2,redirect,C#,Asp.net Mvc,Asp.net Mvc 2,Redirect,在应用程序中,用户键入一个Id并获取一个包含详细信息的表。 在此表中,用户可以选择删除项目。 为了删除项目,我使用不需要的id调用控制器。例如:http://localhost:12345/DeleteItem/{id} 之后,我想将用户重定向回初始表,而不带删除的行,因此我想将用户重定向回初始表,并提供Id,以便基本上重新加载页面 我知道,为了重新定向用户,我需要使用: 返回新的RedirectResultRequest.urlReferer.ToString 但是我怎样才能传递身份证呢 这是

在应用程序中,用户键入一个Id并获取一个包含详细信息的表。 在此表中,用户可以选择删除项目。 为了删除项目,我使用不需要的id调用控制器。例如:http://localhost:12345/DeleteItem/{id}

之后,我想将用户重定向回初始表,而不带删除的行,因此我想将用户重定向回初始表,并提供Id,以便基本上重新加载页面

我知道,为了重新定向用户,我需要使用: 返回新的RedirectResultRequest.urlReferer.ToString

但是我怎样才能传递身份证呢

这是我的计划期望得到的:

public ActionResult Index(string id, int? page)
        {
            //some code
        }

您始终可以使用TempData。因此,您的操作将包含如下代码:

var url=string.Format("{0}?id={1}",Request.UrlReferrer,id);
return new RedirectResult(url);

 public ActionResult Index(string id, int? page)
    {
        //some code
    }
TempData["RedirectId"]=id;
return new RedirectResult(Request.UrlReferrer.ToString());


您始终可以使用TempData。因此,您的操作将包含如下代码:

var url=string.Format("{0}?id={1}",Request.UrlReferrer,id);
return new RedirectResult(url);

 public ActionResult Index(string id, int? page)
    {
        //some code
    }
TempData["RedirectId"]=id;
return new RedirectResult(Request.UrlReferrer.ToString());

我考虑了你建议的第二个选择,但在某些情况下会把事情搞砸。。你能再解释一下选项1吗?以后如何使用TempData[RedirectId]?var id=TempData[RedirectId]我的意思是,你把它放在哪里?当您想使用itI时,我意识到您可能不想更改您的操作签名,并相应地更新了答案。基本上我是在构建QueryStrings最终我使用了TempData[RedirectId],在索引中我检查了TempData[RedirectId]是否有值,并使用了它。谢谢