static void Main() { Assembly assembly = null; try { assembly = Assembly.Load("CarLibrary"); Type type = assembly.GetType("CarLibrary.MiniVan"); ICar carInstance = Activator.CreateInstance(type) as ICar; if (carInstance != null) { carInstance.Acceleration(); carInstance.Driver("Shumaher", 26); } } catch (FileNotFoundException e) { Console.WriteLine(e.Message); } // Delay. Console.ReadKey(); }
static void Main(string[] args) { Assembly assembly = null; try { assembly = Assembly.Load("001_CarLibrary"); Type type = assembly.GetType("_001_CarLibrary.MiniVan"); //сначала ICar светился красным, потому, интерфейс _000_ICarr находится в другом namespace ICar carInstance = Activator.CreateInstance(type) as ICar; //сделал using _000_ICarr; и все заработало if (carInstance != null) { carInstance.Acceleration(); carInstance.Driver("Shumaher", 26); } } catch (FileNotFoundException e) { Console.WriteLine(e.Message); } //Delay Console.ReadKey(); }
static void Main() { Assembly assembly = null; try { assembly = Assembly.Load("CarLibrary"); Type type = assembly.GetType("_010_CarLibrary.MiniVan"); Console.WriteLine("Полное Имя: {0}", type.FullName); Console.WriteLine("Базовый класс: {0}", type.BaseType); //Информаия про интерфейсы Type[] typesInterfaces = type.GetInterfaces(); foreach (var typeInterfaces in typesInterfaces) { Console.WriteLine(typeInterfaces); } ICar carInstance = Activator.CreateInstance(type) as ICar; if (carInstance != null) { carInstance.Acceleration(); carInstance.Driver("Shumaher", 26); } else { Console.WriteLine("carInstance = null"); } } catch (FileNotFoundException e) { Console.WriteLine(e.Message); } // Задержка. Console.ReadKey(); }