T4MVC和HTTPS未显示在URL中

时间:2012-06-28 17:08:06

标签: asp.net-mvc-3 iis ssl https t4mvc

我有点困惑,但我在本地T4MVC上使用IIS Express呈现的网址在网址中包含HTTPS。在我们的登台服务器上,呈现的URL包含HTTP,但使用的代码如下所示?有谁知道为什么?

<a href="#" data-bind="attr: { href: '@Url.GetSearchResultsUrl(MVC.ManageArea.DistrictAdmins.DistrictAdmin())&id=' + Id }">View</a>

public static string GetSearchResultsUrl(this UrlHelper urlHelper, ActionResult actionResult)
        {
            return urlHelper.ActionAbsolute(actionResult.AddRouteValue(Config.ViewData.SearchResults, true));
        }
public static string ActionAbsolute(this UrlHelper urlHelper, ActionResult result) {
            return string.Format("{0}{1}",urlHelper.RequestContext.HttpContext.Request.Url.GetLeftPart(UriPartial.Authority),
                urlHelper.RouteUrl(result.GetRouteValueDictionary()));

更新

我刚刚发现F5负载均衡器正在使用302重定向从http重定向到https。             }

1 个答案:

答案 0 :(得分:0)

最近有一些更改会自动使用https,但只有在您使用[RequireHttps]属性时才会发生这种情况。你知道你是否正在使用它吗?

有关详细信息,请参阅change log。这是在2.8.0 / 2.8.1中添加的。

在t4mvc.tt中搜索“ActionUrlHttps”以查看相关代码。