Хотя многие веб -сайты, которые используют ASP, вообще не используют компоненты, в этой статье ASP считается мостом между интернет -клиентами и компонентами.
ASP и компоненты службы подразделения
ASP чаще всего используется для создания HTML или XML -файлов для использования клиентами на серверах, поэтому мы в основном обсуждаем этот сценарий использования. Это поднимает общий вопрос: если страницы ASP находятся на сервере, то принадлежат ли они части бизнес -уровня? В мире компонентов ответ обычно нет. Хотя ASP работает на сервере и может быть в том же пространстве, что и сервер приложений, это не делает его частью бизнес -логики.
С учетом того, что инструменты пользовательского интерфейса растут или по мере использования большего количества решений для бизнеса.
Сказав это, давайте посмотрим на некоторые из наиболее важных критериев разделения уровня бизнеса и презентаций:
Отдельный код пользовательского интерфейса от бизнес -логики. Это включает в себя написание кода в сочетании с пользовательским интерфейсом, таким как использование объекта MTS, который использует внутренний компонент ASP для отделения его от кода бизнес -логики, как если бы он был в другом DLL.
Отдельные транзакции от страниц ASP. В некоторых случаях транзакция ASP очень хорошая, но компоненты и многоуровневые приложения меняют это. Компоненты не должны полагаться на клиентский уровень для управления своими транзакциями и семантикой бизнес -логики.
Поместите представляющий компонент (компонент, который использует запрос и ответ) в ту же машину и/или процесс, что и веб -сервер. Если объект, использующий объект внутреннего компонента ASP, помещается на удаленную машину, все вызовы внутреннего компонента будут происходить в форме обратного вызова. Сервер COM+, который вызывает клиент IIS, является сервером COM+, который значительно снижает производительность и усложняет конфигурацию безопасности. Эти настройки объектов могут быть размещены в приложении Com+, помеченной как «Активация библиотеки».
ASP существует на сервере, поэтому страница ASP должна соответствовать правилам обмена ресурсами и помнить о масштабируемости. См. Подробности ниже:
В «сеансе» руководство должно попытаться избежать статуса пользователя.
Держите ASP без составы и разрешайте пулы ресурсов, где это возможно.
Метод работы
При оценке того, принадлежит ли сегмент кода к бизнес-логике или презентации, спросите себя: «Если мне нужно заменить страницу ASP на телефонное приложение типа кнопки, этот код все еще полезен?» Если ответ «да», вы можете попробовать разделить его на код бизнес -логики или вспомогательный код пользовательского интерфейса.
Если код не может использоваться после изменения клиента, или если он является помощником для построения пользовательского интерфейса, код принадлежит уровню службы представления. Это на странице ASP или в компоненте, который использует внутренние компоненты ASP. Это не принадлежит компоненту бизнес -объекта.
Понять разницу между настольным и клиентом ASP
ASP является специальным клиентом компонентов, в отличие от традиционных однопоточных приложений Win32 на рабочем столе. Основные различия суммируются следующим образом.
Управление потоком: ASP-многопоточный клиент. Это означает, что может быть много параллельных действий, которые работают вместе, возможно, обрабатывая различные страницы ASP одновременно. Это означает, что объект не может быть сделан ложно утверждать, что это единственный пользователь, который занимает исключительно систему. Это может привести к неожиданным реакциям, например, для развития плохой привычки хранения объектов в сеансе ASP или переменных приложения.