Html.BeginForm には、使用するプロトコルを指定できるオーバーロードがあります。
Ajax.BeginForm はそうではないというのは正しいですか?
私は現在、アクションを変更した同等のフォームhtmlを出力することで回避していますが、これは面倒です。
@{
string actionStr = Config.EnableHttps ? Url.Action("Action", "Controller", new { }, "https").UrlToUrlWithoutPort()
:
Url.Action("Action", "Controller", new { }, "http");
}
<form method="post" data-ajax-loading="#SomeGif" data-ajax="true" action="@actionStr">