Комментарии 36
Отлично! Всё понятно :) Спасибо большое.
Отлично пишите =) С удовольствием почитаю и далее. Жалко вашу прошлую книгу купить не удалось из-за того, что не доставляют в Грузию российские магазины =(
Оотлично! Очень понравилось спасибо! Приятный стиль изложения, и как про меня написано — сам придумывал велосипед для использования плагинов, используя рефлексию и бубен. Было бы здорово почитать еще, пишите!
Спасибо, порадовали! :) Если что, готов помогать в переводе, тема MEF мне знакома.
Хорошо излагаете. Буду следить за циклом.
Спасибо!
Спасибо!
Когда я был маленький и глупый ещё не знал про рефлексию и ООП, но сделать плагины уже хотелось — меня всегда интересовало, откуда компилятор узнает про тип FirstPlugin, если он вынесен в плагин и при компиляции его просто нет?
А причем здесь рефлексия? Насколько я понимаю, просто сборка с плагином статически подключена к проекту. Или я ошибаюсь?
внутри используется рефлексия, конечно, для поиска типов помеченных атрибутами и прочих дел
я почему-то всегда проводил аналогию между MEF и OSGI…
На мой взгляд, пример не очень удачный, поскольку экземпляр FirstPlugin создаётся в том же объекте, в котором используется. Это можно было просто присвоение написать: Plugin = new FirstPlugin(). А чтобы заменить FirstPlugin на SecondPlugin нужно изменять класс HomeController. Т.е просто не видно использования того механизма, ради котороно это всё, собственно, и нужно :o)
для первой главы и введения, пример подходящий
про внешние плагины нельзя рассказать без рассказа про каталоги в MEF
собственно, во второй главе про это речь и пойдет, там будут и внешние плагины с более сложным примером :-)
про внешние плагины нельзя рассказать без рассказа про каталоги в MEF
собственно, во второй главе про это речь и пойдет, там будут и внешние плагины с более сложным примером :-)
Однако, автор этого текста настоятельно рекомендует указывать контракты всякий раз, как вы определяете импортируемые и экспортируемые части. Такое определение поможет вам быстрее понимать текст кода в дальнейшем.
А с другой стороны, это может привести к проблемам при изменении типа свойства без соответствующего изменения определения атрибута
Думаю, следует добавить, что для начала надо добавить в References приложения сборку System.ComponentModel.Composition =)
Вопрос: у нас продукт для .NET 2.0 — есть ли версия MEF для 2.0?
такой версии нет, MEF местами использует лямбды и другие фишки из 3.5
в принципе, наверняка, можно портировать, это же опенсорс, но это должен сделать тот кому это надо
есть альтернатива, которая, возможно подойдет
Mono.Addins
monoaddins.codeplex.com/
в принципе, наверняка, можно портировать, это же опенсорс, но это должен сделать тот кому это надо
есть альтернатива, которая, возможно подойдет
Mono.Addins
monoaddins.codeplex.com/
Только сегодня на работе обсуждали перевод одного из модулей с 2.0 на 3.5, вроде граблей быть не должно.
Если не секрет, а у вас с чем связано то, что вы не переходите на 3.5?
Если не секрет, а у вас с чем связано то, что вы не переходите на 3.5?
Можно взять любой IoC-контейнер и немного допилить.
Пример в ComposeParts() крайне неудачный и совсем не то, что должно фигурировать в первой статье.
<code>
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Книга MEF