[英]Add a global querystring paramter to T4MVC generated links
我如何向T4MVC添加一個掛鈎,以便當我使用T4MVC鏈接到動作時,它會檢查當前請求中是否有參數,例如PIN = 1234。 如果存在,我希望將此參數添加到生成的鏈接中。
我為UrlHelper創建了擴展方法,該方法包裝了T4MVC的UrlHelper擴展方法。 這會將必需的附加參數添加到從T4MVC生成的每個鏈接中。
public static class T4MVCHelpers
{
/// <summary>
/// Returns a T4MVC generated url, passing along PIN
/// </summary>
public static string ActionUrl(this UrlHelper urlHelper, ActionResult result)
{
var pin = urlHelper.RequestContext.HttpContext.Request["Pin"];
if (!string.IsNullOrEmpty(pin))
{
result.AddRouteValue("Pin", pin);
}
return urlHelper.Action(result);
}
}
然后,我總是調用此包裝器方法,而不是T4MVC的方法
var Url.ActionUrl(MVC.SomeController.Index(1));
現在取決於請求的URL。 如果發出請求的網址沒有pin參數,它將看起來像這樣
/SomeController/Index?param1=1
現在取決於請求的URL。 如果發出請求的網址的PIN = 123,則它將如下所示
/SomeController/Index?param1=1&PIN=123
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.