データテーブルからデータを補間する方法を構築しようとしていますが、これを行う最も効率的な方法についての提案を知りたいです。私はこのようなものを始めました:
List<double> freqlist, Rlist, Llist, Qlist;
foreach (DataRow row in tdt.Table.Rows) //tdt contains my datatable
{
freqlist.Add(row.Field<double>("FREQ"));
Rlist.Add(row.Field<double>("R"));
Llist.Add(row.Field<double>("L"));
Qlist.Add(row.Field<double>("Q"));
}
データをいくつかのリストにプルした後、ソートされたリストで機能する線形補間法を使用します。これは現在機能していますが、事前にデータ型を知っている場合に限ります (現在は double を使用しています)。
私はここで立ち往生しています:このメソッドが事前にデータテーブルから (列から?) データ型を決定し、それを list.Add の row.Field<> 拡張で使用できるようにしたいと考えています。
次のようなもので、row.Field<> で type / typecode 変数を使用することはできませんでした (これは可能ですか?)。
System.Type tc = System.Type.GetType(tdt.Table.Columns["R"].DataType.ToString());
freqlist.Add(row.Field <tc> ("FREQ"));
型チェックの結果を使用する別の方法を知っている人はいますか?
また、リストなしでテーブル自体を補間するより良い方法はありますか?