Html.BeginForm()は実際にusing
ブロックの内容を取得しません。これは、Dispose
メソッドの応答に開始タグと終了タグを書き込むことによって、フォームタグで囲みます。IDisposable
。
Html.BeginForm()
の実装hereとDisposeメソッドhereを参照してください。
ブロックの内容を実際にキャプチャする場合は、パラメータとしてRazor Templateを取るヘルパーメソッドを記述することができます。以下の方法で実装することによって
:あなたはカミソリでそれを使用することができます
public static class HtmlHelperExtensions
{
public static string CoffeeScript(this HtmlHelper htmlHelper, Func<HelperResult> template)
{
// Then you can access the contents of the block here
string contents = template().ToHtmlString();
return DoSomething(string);
}
}
は次のように表示します。
@Html.CoffeeScript(@<text>
Anything can go here
</text>;);
UPDATE: だけ明確にする、あなたの拡張メソッド与えられたが属しますMyApplication.Extensions
名前空間を使用する場合は、ビューの上部に以下を追加する必要があります。
@using MyApplication.Extensions;