MvcForm.Dispose

MvcForm.Disposeは、本来MvcFormオブジェクトの終了処理であり、リソース解放とかだが、実はformの終了タグを出力することも担っている。

MvcForm.Dispose メソッド (System.Web.Mvc.Html) | Microsoft Docs

Index.aspxで、

<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Index</title>
</head>
<body>
    <div>
        <%
          var mvcForm = Html.BeginForm();
          mvcForm.Dispose();
        %>
    </div>
</body>
</html>

とすると、

formの終了タグが出力されてる
formの終了タグが出力されてる

formの終了タグが出力されてる。
ということは、

usingでHtml.BeginForm()の戻り値のMvcFormを囲んでも、Disposeが呼ばれformの終了タグが出力されるということ。

確かにそうなった。
確かにそうなった。

確かにそうなった。
(usingを使った記述が見られたので、何故かとおもったらそういうことだった・・・。)

https://github.com/bg1bgst333/Sample/tree/master/aspnetmvc/MvcForm/Dispose/src/MvcForm_title