1

コントローラで反復処理する必要のあるさまざまなプロパティ(文字列、intなど)を持つViewModelがあります。これを行うための最良の方法は何ですか?ViewModelの定義は次のとおりです。

public class BankListViewModel
{
    public int ID { get; set; }
    public string BankName { get; set; }
    public string EPURL { get; set; }
    public string AssociatedTPMBD { get; set; }
    public string Tier { get; set; }
    public List<BankListAgentId> BankListAgentId { get; set; }
    public List<BankListStateCode> BankListStateCode { get; set; }
}

ただし、2つのリストを省略する必要があります。何か案は?

編集

このプロセスの目的は、ビューモデルの特定のアイテムを3つの別々のオブジェクトに渡すことです。ビューモデルは、3つの別々のSQLテーブル/モデルのプロパティを組み合わせるために作成されました。現在、それらを適切に分割し、関連するテーブルに情報を追加しようとしています。今、私は次のように1つずつ進んでいます。

        BankListMaster banklistmaster = new BankListMaster();
        banklistmaster.AssociatedTPMBD = viewmodel.AssociatedTPMBD;
        banklistmaster.BankName = viewmodel.BankName;
4

1 に答える 1

4

値を読み取るだけでなく、プロパティを反復処理する必要がある理由は明確ではありませんが、リフレクションを使用してこれを実現できます。

var model = new BankListViewModel();
PropertyInfo[] properties = model.GetType().GetProperties();
foreach (var property in properties)
{
    if (property.GetType() != typeof(List<BankListAgentId>))
            {
                //do your thing here
            }

}
于 2013-03-20T16:25:40.423 に答える