MVC表单在演示中生成不需要的代码

时间:2013-05-07 13:25:18

标签: asp.net-mvc razor html-helper

每当我使用(@ Html.BeginForm())时,如下例所示:

@using (Html.BeginForm())
{
    @Html.DropDownList("test", Model.Select(p => new SelectListItem{ Text = p.Name, Value = p.ID}))
}

我收到此错误:

  

错误2在声明

之前,不能使用局部变量'Html'

2 个答案:

答案 0 :(得分:1)

您在使用前缺少@,例如

@using (Html.BeginForm()) { ... }

...正如评论者指出的那样,一旦进入@using,请从@

前面移除@Html

答案 1 :(得分:0)

当您使用剃刀视图时 @ 语句尝试将输出打印到响应中。 在你的情况下

@Html.BeginForm() 

上面的语句返回它试图打印的Form对象,并导致在浏览器上打印类名的对象的ToString()方法 您应该从语句中删除 @ ,并仅使用它。

因此就像这样

@using (Html.BeginForm())
{
// your html
}