画像 URL のプロパティを含むモデルがあります。
[Required]
[DataType(DataType.ImageUrl)]
public string Logo { get; set; }
ご覧のとおり、データ型は ImageUrl であり、この事実を使用して Views/Shared ディレクトリにエディター テンプレートを作成しました。
テンプレートは、いくつかの余分な html 要素を追加してデフォルト テンプレートを拡張するだけで済みます。どうすればいいのかわかりません。
HTMLヘルパーを呼び出すときにテンプレート名を指定しようとしましたが、うまくいかないようです。
私が使用しているコードは次のとおりです (これはカスタム テンプレート内にあることに注意してください)。
@Html.EditorFor(model => model, "string")
ご参考までに、MVC 3 dll でリフレクターを使用してテンプレート名を取得した後、
System.Web.Mvc.Html
TemplateHelpersクラスのコンストラクターを調べたところ、次の行が見つかりました。
dictionary3.Add(typeof(string).Name, new Func<HtmlHelper, string>(DefaultEditorTemplates.StringTemplate));
どんな助けにも乾杯 トニー
アップデート
言及するのを忘れました。私がこれを行っている理由は、MVC 3 の控えめな検証を利用するためです。