ASP.NET MVC - Ajax.BeginForm有没有一种方法可以指定协议(http / https)而无需覆盖操作?

时间:2012-06-07 07:39:58

标签: asp.net-mvc-3

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">

1 个答案:

答案 0 :(得分:1)

您可以在操作方法上放置[RequireHttps]属性,要求所有呼叫都是https吗?或者编写一个自定义属性来检查config.enablehttps并以这种方式要求它?