0

将我的 MVC4 应用程序升级到 MVC5 并按照本教程进行操作后,我收到编译错误:

@using System.Net.Http
@model MyApplication.Models.Data
@{
    ViewBag.Title = "My Page";
}
@using (Ajax.BeginForm("Add", "Home", HttpMethod.Post, new AjaxOptions() { UpdateTargetId = "Result" }, new { @class = "form-horizontal" }))
{
    @Html.Partial("Partial")
    <div id="Result">
        @Html.Partial("AddPartial", Model);
    </div>
}

错误 CS0103:当前上下文中不存在名称“HttpMethod”

我在我的项目中引用了 System.Net.Http.dll (4.0.0.0)。

编辑:更新后,我在“管理 Nuget 包”中仍然有一个警告,说某些包无法完全卸载并告诉我重新启动 VS,但这不起作用,并且警告停留在那里。

4

1 回答 1

1

Ajax.BeginForm中,我们需要在AjaxOptionswith 属性HttpMethod中传递 Method,该属性采用字符串POSTGET

@using (Ajax.BeginForm("Add", "Home", new AjaxOptions() 
                                      { 
                                        UpdateTargetId = "Result",
                                        HttpMethod="POST" 
                                      }, new { @class = "form-horizontal" }))
{
}

而在Html.BeginForm中,我们必须传入第三个参数,即 Enum FormMethod,在后期我们使用FormMethod.Post

@using (Html.BeginForm("Add", "Home",FormMethod.Post, new { @class = "form-horizontal" }))
{
}
于 2014-10-23T10:21:54.703 回答