固定された一連のフィールド (住所、自宅の電話番号、SSN、名前など) の中から、どのフィールドをどの順序で描画するかを顧客が指定できるようにする必要があります。
これのベストプラクティスは何ですか? 「DrawField」のような HTML ヘルパー メソッドが適切な気がしますが、HTML ヘルパー メソッドの本体で Html.EditorFor のようなヘルパーを使用できますか? modelstate にエラーがあり、フォームを再表示した場合、送信された値とエラーは入力されますか?
「最も安全な」アプローチは、醜い大きなループのようです。
foreach( Field f in FieldList)
{
if(f.Key == FieldKey.FirstName)
{
@Html.LabelFor(model => model.FirstName, StringResource("firstNameLabel"))
@Html.EditorFor(model => model.FirstName)
@Html.ValidationMessageFor(model => model.FirstName)
<br />
}
if(f.Key == FieldKey.LastName)
{
......
}
}
もっといい方法があるに違いない!