0

每当我使用 (@Html.BeginForm()) 时,例如在下面的示例中:

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

我收到此错误:

错误 2 在声明之前不能使用局部变量“Html”

4

2 回答 2

1

您在使用前丢失@了,例如

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

...正如评论者指出的那样,一旦您进入@using,请@从前面删除@Html

于 2013-05-07T13:27:02.273 回答
0

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

@Html.BeginForm() 

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

因此使它像这样

@using (Html.BeginForm())
{
// your html
}
于 2013-05-07T13:34:21.147 回答