モデル(またはサブモデル)がオブジェクトである場合、通常はエディターテンプレートと表示テンプレートを使用します。このようにして、いくつかのforeach構造List<T>
でコードを「台無しにする」ことを避けます。
モデルがオブジェクトである場合に、エディターテンプレートと表示テンプレートを使用する方法があるかどうかを知りたいと思いました。Dictionary<K,V>
ありがとう
フランチェスコ
PS:Razorでの回答はもっとありがたいです
モデル(またはサブモデル)がオブジェクトである場合、通常はエディターテンプレートと表示テンプレートを使用します。このようにして、いくつかのforeach構造List<T>
でコードを「台無しにする」ことを避けます。
モデルがオブジェクトである場合に、エディターテンプレートと表示テンプレートを使用する方法があるかどうかを知りたいと思いました。Dictionary<K,V>
ありがとう
フランチェスコ
PS:Razorでの回答はもっとありがたいです
エディター/ディスプレイテンプレートは、ではうまく機能しませんDictionary<TKey, TValue>
。個人的には、モデルバインダーの正しいフィールド名を生成することはPITAである可能性があるため、特にEditorTemplatesでこのタイプを使用することは避けています。
カスタムビューモデルを定義することをお勧めします。
public class Item
{
public string Key { get; set; }
public string Value { get; set; }
}
次に、IEnumerable<Item>
エディター/ディスプレイテンプレートを定義するビューモデルにプロパティを設定します。それはあなたの人生をはるかに楽にします。あとは、モデルプロパティ(潜在的にはDictionary<TKey, TValue>
)とビューモデルプロパティの間をマッピングするだけです。