Alexey 的个人资料Life vs. Programming照片日志列表更多 工具 帮助

日志


4月9日

Релиз Enterprise Library 3.0

На самом деле релиз состоялся еще 5-го апреля. Тогда (днем) я хотел написать об этом, но домашняя страница проекта еще не была обновлена и я решил подождать. А на следующий день уехал в Нормандию, о чем будет следующий пост :) Поэтому пишу сейчас.

Итак, релиз. Из основных улучшений и новшеств:

- Новые Application Blocks: Validation Application Block и Policy Injection Application Block (немного расскажу ниже)
- Поддержка .NET 3.0 (WPF, WCF)
- Data Access Application Block "научился" поддерживать транзакции и работать с SQL Server Compact Edition
- Некоторые изменения в Exception Handling Application Block и в Logging Application Block.

Коротко о новых блоках.

Valication Application Block позволит разработчику в декларативной форме (с помощью атрибутов или непосредственно в конфигурационном файле) задавать правила валидации свойств объектов. Работает это и в WinForms, и в ASP.NET и в WCF
Блок содержит набор уже готовых правил, таких, как валидация с использованием регулярных выражений, валидация даты (можно, например, задать правило при вводе даты рождения для проверки совершеннолетия пользователя), валидация по значению перечислений, длинны строки, null и т.д. Кроме этого можно создавать свои собственные правила.
Более того, правила можно комбинировать (OR и AND), а так же задавать различные наборы правил для различных контекстов. Так, например, правила валидации для интерфейса пользователя могут быть отличны от правил валидации при сохранении в БД.
Повторюсь, что наборы правил можно задавать с помощью атрибутов, а можно прямо в конфигурационном файле, то есть, без изменения существующего кода.

Policy Injection Application Block - позволяет разработчику контроллировать операции, осуществляемые над объектом. Например, можно задать правило, чтобы при вызове метода Hello класса World происходила запись в лог. Или, перед вызовом проверить какие-то условия (разрешен ли доступ, находимся ли в режиме онлайн и т.д), а после завершения вызова совершить какие-то действия (записать аудит, сбросить кеш и т.д.).
С помощью таких pre- и post- полиси мы можем управлять некоторыми аспектами поведения системы без модификации кода кучи методов (например, без вставки кода записи в лог в начало каждого метода).
В "наборе" блока имеется ряд полезных "хандлеров" (обработчиков):
Exception Handling Handler, Caching Handler, Performance Counter Handler, Validation Handler, Logging Handler, Authorization Handler. Используя эти обработчики можно в декларативной форме задавать правила, которые будут обрабатываться блоком.

В общем об инфраструктуре EL3 можно сказать еще и то, что "конфигуратор" теперь интегрирован в Visual Studio 2005. Не скажу, что это такое уж большое и важное изменение, но все же приятно :)

Осталось добавить только, что EL3 на 100% совместима с EL2, то есть, разработчикам не придется переделывать код при переходе (во всяком случае такое обещано).
Пора начинать использовать :) В дальнейшем я, быть может, напишу еще пару постингов о EL3 в плане конкретного использования в коде.

А пока буду думать о Нормандии :)

评论

请稍候...
很抱歉,您输入的评论太长。请缩短您的评论。
您没有输入任何内容,请重试。
很抱歉,我们当前无法添加您的评论。请稍后重试。
若要添加评论,需要您的家长授予您相应权限。请求权限
您的家长禁用了评论功能。
很抱歉,我们当前无法删除您的评论。请稍后重试。
您已超过了一天之内允许提供的评论数上限。请在 24 小时后重试。
因为我们的系统表明您可能在向其他用户提供垃圾评论,您的帐户已禁用了评论功能。如果您认为我们错误地禁用了您的帐户,请联系 Windows Live 支持部门
完成下面的安全检查,您提供评论的过程才能完成。
您在安全检查中键入的字符必须与图片或音频中的字符一致。

若要添加评论,请使用您的 Windows Live ID 登录(如果您使用过 Hotmail、Messenger 或 Xbox LIVE,您就拥有 Windows Live ID)。登录


还没有 Windows Live ID 吗?请注册

引用通告

此日志的引用通告 URL 是:
http://patrol02.spaces.live.com/blog/cns!430EDF394C126296!556.trak
引用此项的网络日志