2017-10-17 30 views

回答

0

我为UrlHelper创建了一个扩展方法,它包装了UrlHelper的T4MVC的扩展方法。这将所需的附加参数添加到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。如果请求的url没有引脚参数,它将看起来像这样

/SomeController/Index?param1=1 

现在取决于请求的url。如果请求的url具有PIN = 123,它将如下所示

/SomeController/Index?param1=1&PIN=123 
相关问题