21 EKİM 2008, Salı
Nasıl Yansıma Aşırı bir Yöntemi Çağırmak için kullanın .NET
Bir şekilde aşırı bir yöntem yansıma kullanarak Çağırmak için vardır .NET (2.0). Dinamik olarak ortak bir temel sınıf türetilmiş olan sınıfların başlattığı bir uygulama var. Uyumluluk amacıyla, bu temel sınıf aynı ada 2 yöntem parametreleri ile bir içerir. Üzerinden parametresiz yöntem Çağırmak aramam gerek. Şu anda, tek bir hata belirsiz bir yöntemi çağırmak için çalışıyorum söylüyor.
Evet, Ben Deolabilirsadece temel sınıf bir örneği olarak nesneyi fırlatmak ve ihtiyacım var bu yöntemi çağırın. Eninde sonunda buolur, ama şu anda, iç komplikasyonlar buna izin vermez.
Herhangi bir yardım iyi olurdu! Teşekkürler.
CEVAP
21 EKİM 2008, Salı
İstediğiniz belirtmeniz gerekir:
class SomeType
{
void Foo(int size, string bar) { }
void Foo() { }
}
SomeType obj = new SomeType();
// call with int and string arguments
obj.GetType().GetMethod("Foo", new Type[] { typeof(int), typeof(string)).Invoke(obj, new object[] { 42, "Hello" });
// call without arguments
obj.GetType().GetMethod("Foo", new Type[0]).Invoke(obj, new object[0]);
Bunu Paylaş:
Nasıl yansıma özel bir yöntemi çağırma...
Nasıl yansıması genel bir Yöntemi çağı...
Nasıl Android bir gecikmeden sonra bir...
Fasulye başlatma tamamlandıktan sonra ...
Parametrelerle Yöntemi Çağırmak için N...