Aşağıdaki dersi örnek olarak alın:
class Sometype
{
int someValue;
public Sometype(int someValue)
{
this.someValue = someValue;
}
}
Daha sonra yansımayı kullanarak bu türden bir örnek oluşturmak istiyorum:
Type t = typeof(Sometype);
object o = Activator.CreateInstance(t);
Normalde bu işe yarar, ancak SomeType
parametresiz bir kurucu tanımlamadığından, çağrısı " Bu nesne için parametresiz kurucu tanımlanmadı " mesajıyla bir Activator.CreateInstance
tür istisnası atacaktır . Bu türden bir örnek oluşturmanın hala alternatif bir yolu var mı? Tüm sınıflarıma parametresiz kurucular eklemek biraz berbat olurdu.MissingMethodException
FormatterServices.GetUninitializedObject
başlatılmamış dizge oluşturmaya izin verilmez. İstisna alabilirsiniz:System.ArgumentException: Uninitialized Strings cannot be created.
Lütfen bunu aklınızda bulundurun.