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