Учитывая имя типа, вам нужно использовать отражение, чтобы найти фактический тип, а затем получить его значение по умолчанию.Однако, поскольку имя типа для int
равно System.Int32
, вам необходимо просмотреть словарь, например:
var dictionary = new Dictionary<string, string>
{
{"int", "System.Int32"},
};
var typeName = "int";
if (dictionary.ContainsKey(typeName))
typeName = dictionary[typeName];
var type = Type.GetType(typeName);
var defaultValue = type.IsValueType ? Activator.CreateInstance(type) : null;