Si vous regardez la source de la ASP.NET MVC (disponible sur Codeplex), vous verrez la mise en œuvre de la BeginForm finalement appels vers le bas pour le code suivant:
static MvcForm FormHelper(this HtmlHelper htmlHelper, string formAction, FormMethod method, IDictionary<string, object> htmlAttributes)
{
TagBuilder builder = new TagBuilder("form");
builder.MergeAttributes<string, object>(htmlAttributes);
builder.MergeAttribute("action", formAction);
builder.MergeAttribute("method", HtmlHelper.GetFormMethodString(method), true);
htmlHelper.ViewContext.HttpContext.Response.Write(builder.ToString(TagRenderMode.StartTag));
return new MvcForm(htmlHelper.ViewContext.HttpContext.Response);
}
Le MvcForm classe implémente IDisposable, dans sa méthode dispose est écrit le </forme> pour la réponse.
Donc, ce que vous devez faire est d'écrire les balises que vous souhaitez à l'aide de la méthode retourne un objet qui implémente IDisposable...dans la méthode dispose de fermer la balise off.