12

Html.BeginFormASP.NET MVC アプリケーションの場合、ステートメントで始まる呼び出しの理由を説明してもらえます@usingか?

例 -

@using (Html.BeginForm()) {

   //Stuff in the form

}

@usingステートメントは名前空間を含めるためのものだと思いました。ありがとう!

4

3 に答える 3

18

Using Statementは、オブジェクトを正しく使用するための便利な構文を提供しIDisposableます。BeginFormヘルパーはIDisposableインターフェイスを実装するため、キーワードを使用できますusing。その場合、メソッドは</form>ステートメントの最後に終了タグをレンダリングします。BeginFormwithoutブロックを使用することもできusingますが、フォームの末尾をマークする必要があります。

@{ Html.BeginForm(); }
    //Stuff in the form
@{ Html.EndForm(); }
于 2013-02-18T12:21:13.590 に答える
4

usingステートメントとして、IDisposable オブジェクトのスコープを定義するために使用されます。

@using (var form = Html.BeginForm()) {
    //Stuff in the form

} // here Dispose on form is invoked.

Html.BeginForm は、破棄中にフォームの終了タグをレンダリングするオブジェクトを返します。</form>

using名前空間を含めるための指示です。

于 2013-02-18T12:13:55.777 に答える
1

Html.BeginForm で使用するusingと、ヘルパーは、BeginForm の呼び出し中に終了タグと開始タグを発行し、さらにIDisposable.

実行がビュー内の (閉じ中かっこ) using ステートメントの最後に戻ると、ヘルパーは終了フォーム タグを発行します。usingコードはよりシンプルでエレガントです。

usingと組み合わせて使用​​する必要はありませんHtml.BeginForm

使用することもできます

@{ Html.BeginForm(); }
   <input type="text" id="txtQuery"/>
   <input type="submit" value="submit"/>
@{ Html.EndForm(); }
于 2013-02-18T12:29:10.087 に答える