Развертывание компонентов структуры и процесс разработки
Обновлен: Ноябрь 2007
При создании таких компонентов структуры, как MessageQueue и EventLog, обычной практикой разработки является использование обозревателя серверов для создания на тестовом компьютере необходимых системных ресурсов, к которым в дальнейшем будут привязаны создаваемые компоненты.
Предположим, что разрабатывается система обработки заказов, использующая для обработки пользовательских данных очередь с именем OrdersReceived. Вначале необходимо создать пробную очередь OrdersReceived и в соответствии с требованиями приложения присвоить значения ее свойствам. Например, может понадобиться установить свойства для определения максимального размера очереди и включить для этой очереди запись событий в журнал.
После создания на тестовом компьютере очереди OrdersReceived необходимо создать проект и добавить к нему экземпляр компонента MessageQueue, привязав его к этой очереди. После этого можно записывать код, компилировать и тестировать проект без необходимости его развертывания на конечном сервере, на котором он должен будет размещаться.
После того как проект готов к развертыванию, он должен быть перенесен с тестового сервера на рабочий сервер. Ресурсы, которые приложение использовало на тестовом компьютере, должны быть повторно созданы на рабочем компьютере. Для автоматического создания этих ресурсов можно использовать компоненты установки. При добавлении к проекту компонента установки этот компонент копирует свойства, установленные при настройке пробного ресурса, что позволяет ему создать на рабочем сервере такой же ресурс.
Например, в рассмотренном выше примере компонент установки очереди получит доступ к экземпляру компонента MessageQueue и узнает об используемой очереди OrdersReceived, находящейся на тестовом сервере. Затем компонент установки скопирует свойства конфигурации очереди OrdersReceived, включая Path и Label, параметры журнала и максимальный размер очереди. Эти значения сохраняются в коде для компонента установки. После компиляции и развертывания проекта требуемые ресурсы будут созданы на компьютере.
Хотя точное следование этим инструкциям не является обязательным, но их выполнение обеспечивает эффективный способ работы с тестовыми и рабочими ресурсами. Если не создается и не настраивается пробный ресурс, из которого значения свойств можно скопировать в компонент установки, можно получить доступ к компоненту установки в классе Installer (или любом другом классе, для атрибута RunInstallerAttribute которого установлено значение true) и вручную установить необходимые значения для создания и установки ресурса в требуемом состоянии.