0

データセットをリストに変換する一般的な方法があります。

public static List<T> ConvertDS<T>(DataSet ds, Converter<DataRow, T> converter)
        {
            return
                (from row in ds.Tables[0].AsEnumerable()
                 select converter(row)).ToList();
        }

しかし、上記の関数で「コンバーター」にパラメーターを渡す方法がわかりません。私はこのようなリストAddressInfoを持っています

List<AddressInfo> lstAddressInfo = new List<AddressInfo>();

lstAddressInfo =ConvertDS(ds,"What to send here")
4

2 に答える 2

0

これを試して:

lstAddressInfo =ConvertDS(ds, convert)

public static AddressInfo convert (DataRow data)
{
 //function converting data
}

DataRow変換するメソッドを指定AddressInfoして new に渡す必要がありますConverter

シャンビュレーターとして編集され、ジェームズが提案した

于 2013-07-30T12:33:35.593 に答える
0

デリゲートConverter<TIn, TOut>が指定されている場合、次のように動作するはずです。

lstAddressInfo =ConvertDS(ds, (row) => {
    return new AddressInfo
    {
        Property1 = row["PropertyA"],
        ...
    };
});
于 2013-07-30T12:39:11.120 に答える