私は次のコードを持っていて、これを関数で呼び出します。実行時にTypeotherType動的から呼び出す必要があります。
// this in code this works fine
DooClass newOne = GetInstance<DooClass>();
// The function
private T GetInstance<T>() where T : new()
{
T item = SomeClass.Instance.GetItem<T>();
if (item == null)
{
item = new T();
}
return item;
}
すべてのオブジェクトは同じ親ParentClassを持っています
//This is what i want to do or something like this
public void SomeFunction(Type someType)
{
ParentClass newObj = GetInstance<someType>();
}
/////以下のコメントを使用して解決
private ParentClass GetElement(Type theType)
{
ParentClass item = (ParentClass)SomeClass.Instance.GetItem(theType);
if (item == null)
{
item = (ParentClass)Activator.CreateInstance(theType);
}
return item;
}
およびクラスSomeClass.Instance.GetItem();のメソッド ジェネリック型を使用しないようにするには、オブジェクトをすべて使用し、型はパラメーターとして一時停止されます