Выражения применяют для описания динамических правил расчета показателей прикладной системы. Вычисление значений выражений осуществляется в режиме runtime. Платформа Devexpress XAF поддерживает специализированный механизм описания формул и выражений. Под выражением понимается строка, в результате разбора и обработки которой может быть получено некоторое значение. Выражения формулируются на языке Criteria Operators.

При разработке масштабных бизнес-приложений востребованы выражения с большим количеством операций и переменных, использующие свойства сложных бизнес-объектов. Составить такие выражения вручную без ошибок крайне затруднительно. Поэтому для конструирования выражений применяется штатный XAF-дизайнер, доступный в WinForms. Также штатный редактор выражений встроен в дизайнер отчетов XtraReport, в редактор метамодели Model Editor.

Бизнес-платформа Xafari расширяет возможности дизайнера выражений, а также предоставляет возможность использования такого дизайнера в Web-интерфейсе. Функциональность дизанейнера выражений реализована в ExpressionPropertyEditor.

ExpressionPropertyEditor позволяет пользователю самостоятельно конструировать и отлаживать выражения в режиме runtime. Поскольку выражение является строкой символов, то оно может быть представлено свойством типа string. ExpressionPropertyEditor отображает свойства типа string с выражениями и позволяет разрабатывать выражения с использованием операторов, свойств бизнес-классов, констант, расширяемых наборов функций и параметров. Платформа Xafari поставляет ExpressionPropertyEditor для платформ Win и ASP.NET.

Чтобы увидеть ExpressionPropertyEditor в действии, обратитесь к разделу Editors|Expression Object в демо-приложении  Feature Center, установленном вместе с Xafari.

Web:

Win:

Использование в прикладных проектах дизайнера выражений Xafari ориентировано, как на администраторов системы, так и на бизнес-пользователей, которые настраивают бизнес-правила обработки данных.

Ключевыми особенностями дизайнера выражений Xafari являются доступность как в Win так и в Web-версии XAF-клиента, расширенная функциональность.

В процессе составления выражения пользователь может выполнять проверку синтаксиса и отладку, эти операции доступны как для выражения целиком, так и для выделенной его части. Добавлены сообщения об отсутствующих полях, расширены сообщения об ошибках синтаксиса.

 

Если выражение разработано для определенного типа объектов, то любой из этих объектов может быть выбран для отладки. Результат расчета по формуле будет отображен в специальной области.

Дизайнер выражений Xafari обеспечивает иерархический просмотр и выбор полей и коллекций в дереве метаданных. При навигации отображается локализованное название свойства и его программное имя, в выражение могут быть включены свойства агрегированных объектов. Любой выбранный элемент сопровождается подробным пояснительным сообщением.

Возможности ExpressionPropertyEditor могут быть расширены в прикладном коде необходимыми функциями, константами и параметрами.

Чтобы узнать больше о ExpressionPropertyEditor, обратитесь к следующим документам:

Возможности разработчика