簡體   English   中英

將全局查詢字符串參數添加到T4MVC生成的鏈接

[英]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.

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