[ wex-alpha @ 01.12.2011. 14:55 ] @
Da li je moguce refleksijom pozvati mutator? Imam klasu: Code: public string Name { get; set; } public DateTime DateCreated {get; set;} Implementirana klasa: Code: public class FirstImpl : Plugin.Plugin, IPlugin { public FirstImpl() { Name = "First Implementation"; DateCreated = DateTime.Now; } void IPlugin.Print() { Console.WriteLine("Plugin name is: " + Name + " This Plugin was created on: " + DateCreated); } } Refleksija: Code: Assembly a = Assembly.LoadFile(DestinationLocation); Type type = a.GetType("FirstPlugin.FirstImpl"); MethodInfo methodInfo = type.GetMethod("get_Name"); //Interni metod za getter object result = null; object classInstance = Activator.CreateInstance(type, null); result = methodInfo.Invoke(classInstance, null); Ne radi. Metod se ne izvrsava. Ako preradim osnovnu klasu, tj. dodam "rucni metod" za izvlacenje imena: Code: public string DajMiIme() // potrebno za refleksiju { return Name; } Onda kada refleksijom pozovem metod DajMiIme, radi. Mislim i ovo rijesenje je ok, ali ako vec imam get;set zasto nesto dodavati? |