default(Type) のプログラム的等価物 質問する

default(Type) のプログラム的等価物 質問する

リフレクションを使用して のプロパティをループしType、特定の型をデフォルトに設定しています。ここで、型を切り替えて を明示default(Type)的に設定することもできますが、1 行で実行したいと思います。デフォルトに相当するプログラムはありますか?

ベストアンサー1

public static object GetDefault(Type type)
{
   if(type.IsValueType)
   {
      return Activator.CreateInstance(type);
   }
   return null;
}

.net標準などの新しいバージョンの.netでは、type.IsValueType次のように記述する必要があります。type.GetTypeInfo().IsValueType

おすすめ記事