.NET → Вышла финальная версия Unity 2.0
Популярный DI-контейнер вышел во второй версии. Кроме того, вышла версия Unity 2.0 для Silverlight 3/4.
Полезные ссылки:
Полезные ссылки:
- скачать Unity 2.0
- скачать Unity 2.0 for Silverlight
- документация Unity 2.0 Final Doc Set
- документация Microsoft Unity 2.0
- документация Microsoft Unity 2.0 for Silverlight
.NET → Расширение возможностей Unity
В этом посте я покажу пример того, как можно расширить стандартные возможности IoC-контейнера Unity. Покажу как создается объект в Unity «изнутри». Расскажу про Unity Extensions, Strategies & Policies.
Допустим в нашем приложении есть компонент Persistence, который отвечает за сохранении объектов. Он описывается интерфейсом IPersistence и имеет реализации — FilePersistence, DbPersistence, WsPersistence, InMemoryPersistence.
В классическом варианте мы в начале приложения регистрируем нужную реализацию в Unity и далее, вызывая Resolve для IPersistence, всегда получаем ее.
Но что делать, если необходимая реализация может меняться в процессе работы приложения. Например она задается в конфиг-файле, или при недоступности сети надо автоматически использовать FilePersistence?
Допустим в нашем приложении есть компонент Persistence, который отвечает за сохранении объектов. Он описывается интерфейсом IPersistence и имеет реализации — FilePersistence, DbPersistence, WsPersistence, InMemoryPersistence.
В классическом варианте мы в начале приложения регистрируем нужную реализацию в Unity и далее, вызывая Resolve для IPersistence, всегда получаем ее.
IUnityContainer uc = new UnityContainer();
uc.RegisterType<IPersistence, FilePersistence>();
IPersistence p = uc.Resolve<IPersistence>();
p.Add(obj);
* This source code was highlighted with Source Code Highlighter.Но что делать, если необходимая реализация может меняться в процессе работы приложения. Например она задается в конфиг-файле, или при недоступности сети надо автоматически использовать FilePersistence?
.NET → Состоялась встреча Уральской группы пользователей .NET

Сегодня 23 апреля 2009 года на факультете матмеха Уральского Государственного Университета (УрГУ) прошла встреча участников Уральской группы пользователей .NET. На встрече были зачитаны два интересных доклада на темы: «Unity Application Block — Unity Container» и «Composite Application Library». Было очень интересно, подробности под катом.
.NET → Первые шаги с Unity: DI/IoC & AOP
Введение
Если Вы когда-нибудь слышали такие слова, как IoC, DI, AoP, но не имеете четкого понимания этих терминов, надеюсь, эта статья поможет в них разораться на примере работы с Microsoft Unity контейнером.