Is there any way to create Task<T>
in runtime where T
is the type known only in runtime? I would like to create Task<T>
with default value for T
but after obtaining default value for T
and use Task.FromResult(default_value)
I’m getting Task<object>
instead of Task<T>
because in most cases default value is null. Any Idea to fix this?
static void Main(string[] args)
{
var type = typeof(string); // fin real code type resolved in runtime
var default_value = GetDefaultValue(type);
var test = Task.FromResult(default_value); //Task<object> - how to get Task<T>
}
public static object GetDefaultValue(Type t)
{
if (t.IsValueType)
{
return Activator.CreateInstance(t);
}
else
{
return null;
}
}
Aucun commentaire:
Enregistrer un commentaire