0

少し混乱していますがT4MVC、ローカルでレンダリングされるURLIIS ExpressのURLに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へのリダイレクトを行っていることがわかりました。}

4

1 に答える 1

0

最近、自動的に https を使用するように変更されましたが、これは [RequireHttps] 属性を使用している場合にのみ発生するはずです。それを使っているか知っていますか?

詳細については、変更ログを参照してください。これは 2.8.0/2.8.1 で追加されました。

t4mvc.tt で「ActionUrlHttps」を検索して、関連するコードを確認します。

于 2012-06-28T21:39:33.700 に答える