Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using TinyIoC;
- namespace TinyIoCTest
- {
- class MainClass
- {
- public static void Main (string[] args)
- {
- var container = TinyIoCContainer.Current;
- container.Register<IEngine, CheapEngine>().AsMultiInstance();
- //container.Register<IEngine, CheapEngine>().AsSingleton();
- IEngine engine = container.Resolve<IEngine>();
- engine.Start();
- engine.Stop();
- Console.WriteLine ("Hello World!");
- Car c = new Car(container.Resolve<IEngine>());
- c.Start();
- }
- }
- public class Car{
- public Car (IEngine e)
- {
- this._Engine = e;
- }
- public IEngine _Engine {get;set;}
- public void Start() {
- _Engine.Start();
- }
- }
- public interface IEngine
- {
- void Start();
- void Stop();
- }
- class PowerfullEngine:IEngine
- {
- public void Start ()
- {
- Console.WriteLine("Vruuuuuummmm vruuuuum");
- }
- public void Stop ()
- {
- Console.WriteLine("pooo po po po...");
- }
- }
- class CheapEngine:IEngine
- {
- public int istance {get;set;}
- public void Start ()
- {
- istance += 1;
- Console.WriteLine("Prorirrioooodpdpdpdp" + istance.ToString());
- }
- public void Stop ()
- {
- Console.WriteLine("skatafrunkkk traaaak!7#@!!!@#@");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement