Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Microsoft Unity як засіб для полегшення розробки на .Net Framework

Microsoft Unity як засіб для полегшення розробки на .Net Framework

Ростислав Яремчук Lead .Net Developer(MCP, MCTS) at Eleks

Microsoft Unity як засіб для полегшення розробки на .Net Framework

Grygoriy Mykhalyuno

May 17, 2014
Tweet

More Decks by Grygoriy Mykhalyuno

Other Decks in Programming

Transcript

  1. Раніше  ми  писали  так  public  class  ExceptionHandler:  IExceptionHandler    

         {                  private  readonly  ILoggerService  _loggerService;                  public  ExceptionHandler(ILoggerService  loggerService)                  {                          _loggerService  =  loggerService;                  }   ...   ! Як  використовували       var  databaseService  =  new  DatabaseService("connectionString")   var  logger  =  new  LoggerService(databaseService);   var  exceptionHandler  =  new  ExceptionHandler(logger)  ;
  2. Створюємо  контейнер public  IUnityContainer  CreateContainer()   {     var

     container  =  new  UnityContainer();     container            .RegisterType<IDatabaseService,  DatabaseService>()            .RegisterType<ILoggerService,  LoggerService>()            .RegisterType<IExceptionHandler,  ExceptionHandler>();   }
  3. Тепер  можемо  так  public  class  ExceptionHandler:  IExceptionHandler      

       {                  [Dependency]                  public  ILoggerService  LoggerService  {  get;  set;  }                  public  ExceptionHandler()                  {  }   ...   ! Як  використовувати       var  unityContainer  =  CreateContainer();   ..   ! var  exceptionHandler  =  unityContainer.Resolve<IExceptionHandler>();