При динамическом создании перечисления мы действуем аналогично созданию классов. Только вместо класс TypeBuilder мы используем для создания перечисления EnumBuilder, в который потом добавляем нужные члены вместе с числовыми значениями.
Вот пример:
// Создание имени сборки.
AssemblyName an = new AssemblyName("MyAssembly");
an.Version = new Version("1.0.0.0");
// Создание сборки.
AssemblyBuilder ab;
ab = AppDomain.CurrentDomain.DefineDynamicAssembly(an, AssemblyBuilderAccess.Save);
// Создание модуля в сборке.
ModuleBuilder mb = ab.DefineDynamicModule("MyModule", "My.dll");
// Создание типа в сборке.
EnumBuilder tb = mb.DefineEnum( "MyColors", TypeAttributes.Public, typeof(int));
// Добавление членов в перечисление.
tb.DefineLiteral("Red", 0);
tb.DefineLiteral("Pink", 1);
tb.DefineLiteral("Green", 2);
// Непосредственное создание типа.
tb.CreateType();
// Сохранение типа в файл.
ab.Save("My.dll");
После выполнения этог кода в папке вашего проекта образуется файл My.dll, внутри которого будет enum с именем MyColors, содержащий значения Red, Pink и Green.
Конференция Software Development Best Practices Moscow 2007
Уважаемые коллеги, добрый день!
Напоминаем Вам, что до конференции Software Development Best Practices Moscow 2007 остается меньше недели, но у Вас есть еще возможность зарегистрироваться на мероприятие.
Впервые в России 3-4 апреля, 2007 г всемирно известный технологический журнал Dr. Dobb's организует конференцию, которая ежегодно проходит в Бостоне, штат Массачусетс, США. В Москве конференция проводится при поддержке российской ассоциации разработчиков программного обеспечения РУССОФТ и компании "Форт-Росс" - маркетингового агентства, специализирующегося в сфере ИТ.
Условия участия и регистрация на сайте www.sdexpo.ru
На конференции с докладами выступят такие заметные фигуры ИТ-индустрии, как: Theresa Quatrani, IBM; Jim McCarthy; Bruce Eckel, MindView, Inc.; Bertrand Meyer и многие другие.
Трек 2: Человеческий фактор, Работа в команде, Проектные работы
Трек 3: IBM Developer Track и IBM Venture Capital Session!
Помимо основных треков профессионалам в сфере ИТ наверняка покажутся интересными семинары гуру ИТ-индустрии: Джима Маккарти и Брюса Экеля.
Джим Маккари (Jim McCarthy) специально нашел время, чтобы приехать на конференцию Software Developmet Best Practices Moscow 2007. Джим Маккарти - ветеран индустрии разработки программного обеспечения, который возглавлял группу Microsoft® Visual C++® и считается идеологом концепции Microsoft Solutions Framework. Джим Маккарти является также автором популярной книги «Dynamics Of Software Development», позволяющей освоить практические правила и динамику процесса разработки программного обеспечения.
Докладчик затронет вопросы по организации разработки программного обеспечения, рассмотрит актуальные принципы (эмпирические правила), которых следует придерживаться в процессе разработки ПО. Подскажет как создавать успешную команду разработчиков, соблюдать равновесие критических отношений между ее членами, достигать общего видения и более эффективно осуществлять поставку качественного программного обеспечения. Тема будет безусловно интересна руководителям команд разработчиков программного обеспечения, а также
всем участникам проекта: спонсорам, аналитикам, разработчикам, тестерам, техническим писателям и другим.
Брюс Экель (Bruce Eckel) в рамках своего выступления изложит вопросы использования объектно-ориентированного подхода к созданию программ. Докладчик не просто описывает различные проблемы и способы их решения, он раскрывает перед аудиторией особый образ мышления, не владея которым невозможно комфортно чувствовать себя в объектно-ориентированной среде.
Обращаем Ваше внимание, что количество мест ограничено!
Стоимость участия во всех треках конференции – 330 евро
Стоимость участия в семинаре Джима Маккарти – 250 евро
Стоимость участие в семинаре Брюса Экеля – 200 евро
Посещение трека IBM Developer Track и IBM Venture Capital Session – БЕСПЛАТНО!
Будем рады видеть Вас и Ваших коллег на конференции и технологических семинарах.