对于ASP.NET MVC应用程序,有人可以向我解释为什么对Html.BeginForm
的调用以@using
语句开头?
示例 -
@using(Html.BeginForm()){
//Stuff in the form
}
我认为@using
语句用于包含命名空间。
谢谢!
答案 0 :(得分:18)
Using Statement提供了一种方便的语法,可确保正确使用IDisposable
个对象。由于BeginForm
帮助器实现了IDisposable
接口,因此您可以使用using
关键字。在这种情况下,该方法在语句的末尾呈现结束</form>
标记。您也可以使用BeginForm
而不是using
块,但是您需要标记表单的结尾:
@{ Html.BeginForm(); }
//Stuff in the form
@{ Html.EndForm(); }
答案 1 :(得分:4)
using
作为语句用于定义IDisposable对象的范围。
@using (var form = Html.BeginForm()) {
//Stuff in the form
} // here Dispose on form is invoked.
Html.BeginForm返回对象,在处理渲染时关闭表单的标记:</form>
using
是指令。
答案 2 :(得分:1)
当您使用Html.BeginForm using
时,帮助程序在调用BeginForm期间发出结束标记和打开标记,并且还调用返回实现IDisposable
的对象。
当执行返回到视图中使用语句的(结束大括号)结束时,帮助程序将发出结束表单标记。 using
代码更简单,更优雅。
您必须将using
与Html.BeginForm
结合使用。
您也可以使用
@{ Html.BeginForm(); }
<input type="text" id="txtQuery"/>
<input type="submit" value="submit"/>
@{ Html.EndForm(); }