MVCには、従来のASP.NETのようなサーバーコントロールはありません。したがって、サーバー処理はコントロールで実行されません。それらは、入力したとおりにクライアントにレンダリングされます。テーマはASP.NETサーバーコントロールに適用され、ここでは使用しないため、MVCで使用するものではありません。とはいえ、HTMLヘルパーは、ビューがレンダリングされるときにサーバーによって処理されます。htmlプロパティのオーバーロードを使用して、実際のHTMLコントロールにautocomplete="off"を追加する必要があります。
@Html.TextBoxFor(x => x.Something, new { autocomplete="off" } )
または、asp.netサーバーコントロールでautocomplete = "off"を設定すると、実際のHTML属性がレンダリングされます。
編集:すべてのテキストボックスに影響を与える1つのオプションは、独自のHtmlヘルパーメソッドを作成することです。次のような拡張メソッドを作成するだけです。
using System.Web.Mvc;
using System.Web.Mvc.Html;
public static MvcHtmlString NoAutoCompleteTextBoxFor<TModel, TValue>(this HtmlHelper<TModel> html, Expression<Func<TModel, TValue>> expression)
{
return html.TextBoxFor(expression, new { autocomplete="off" });
}
次に、次のことを実行できます。
Html.NoAutoCompleteTextBoxFor(x => x.Something)