-1

次の行の意味がわかりません。

(a) これは .cshtml ファイルの行です。剣道UIを使用しています。

@Html.TextBox("textname", null, new { @class = "k-textbox", style = "width:97px;" })

(b)。これはapp_dataフォルダからです。HtmlEncode と HtmlAttributeEncode の違いがわかりません

public class AntiXssEncoder : HttpEncoder
{
    public AntiXssEncoder() 
    {
    }

    protected override void HtmlEncode(string value, TextWriter output)
    {
        output.Write(AntiXss.HtmlEncode(value));
    }

    protected override void HtmlAttributeEncode(string value, TextWriter output)
    {
        output.Write(AntiXss.HtmlAttributeEncode(value));
    }
    ...
}
4

1 に答える 1

0

最初の行

@Html.TextBox("textname", null, 
               new { @class = "k-textbox", style = "width:97px;" })

次のような出力を生成します

<input type="text" class="k-textbox" style="width:97px"/>

したがって、フォームの一部である場合、バインディングなどのいくつかの利点を持つテキストボックスを生成できるヘルパーです。詳細については、MSD およびこちらを参照してください。

MSDN リソースで説明されているように、他の 2 つの方法の違いは次のとおりです。

HtmlAttributeEncodeメソッドは、引用符 (")、アンパサンド (&)、左山かっこ (<)のみを同等の文字エンティティに変換します。HtmlEncode メソッドよりもかなり高速です。

于 2013-04-15T11:49:06.487 に答える