簡體   English   中英

如何使用ActionFilterAttribute將查詢字符串添加到URL?

[英]How to add a query string to a URL using ActionFilterAttribute?

使用asp.net MVC 3,我想在Controller方法的每個請求上添加一個查詢字符串 ,使用以下代碼,該查詢字符串未添加到URL。

知道我做錯了什么或其他替代方法嗎?

  public ActionResult Index(string uniquestudentreference)
    {
        return View(eventListVM);
    }

 public class UserAttribute : ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            filterContext.ActionParameters["uniquestudentreference"] = Various.GetGivenNameUser();
        }
    }

如果希望uniquestudentreference參數在控制器操作中具有值,則應僅使用正確的URL調用控制器操作,例如:

http://www.someurl.com/<controller>/Index/<uniquestudentreference>

如果要影響通過url傳遞信息的方式,則應考慮自定義路由表(位於Global.asax

您可以在此處閱讀有關此內容的更多信息: http : //www.asp.net/mvc/tutorials/older-versions/controllers-and-routing/asp-net-mvc-routing-overview-cs

您要在此處執行的操作是將值設置為ActionResult中ControllerContext的ViewData或TempData,然后在方法中引用它。 這是比querystring更好的傳遞它的方法,並且也更安全(避免用戶能夠操縱該值)。 或將值存儲在會話中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM