0

画像 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 の控えめな検証を利用するためです。

4

1 に答える 1

2

エディター テンプレート@Html.TextBoxFor(m => m)の代わりに使用してみませんか? EditorFor:)

于 2010-11-23T17:34:50.223 に答える