を使用してDataTable
、列に異なるタイプを割り当てています。String
データを受信していて、列に割り当てられたタイプに基づいてデータを解析したいというシナリオがありますが、解析メソッドにアクセスする方法がわかりません。
Typeインスタンスの解析メソッドに一般的な方法でアクセスすることは可能ですか?
を使用してDataTable
、列に異なるタイプを割り当てています。String
データを受信していて、列に割り当てられたタイプに基づいてデータを解析したいというシナリオがありますが、解析メソッドにアクセスする方法がわかりません。
Typeインスタンスの解析メソッドに一般的な方法でアクセスすることは可能ですか?
あなたが探してConvert.ChangeType
いる。
基本的な型以外のものを使用している場合 (Convert.ChangeType
非常にうまく処理されます)、これを行うには次の方法を使用することをお勧めしTypeConverter
ます。
var converter = TypeDescriptor.GetConverter(type);
object val = converter.ConvertFromString(s); // note various overloads,
// or ConvertFromInvariantString
[TypeConverter(...)]
これは、コンパイル時 ( の追加) または実行時 ( )の両方で、このモデルを拡張して追加の型を認識する (または既存の型の実装を変更する) ことができるため便利ですTypeDescriptor.AddAttributes(...)
。