Общие принципы генерации форм
Для каждой формы генерируется 3 файла: aspx-разметка, code-behind и designer-код.
Эти файлы генерируются на основании присутствующих в WebAppTemplate текстовых шаблонов, представляющих собой файлы с соответствующими расширениями. Например, для формы редактирования используются файлы EditForm.aspx, EditForm.aspx.cs и EditForm.aspx.designer.cs.
Шаблоны эти можно редактировать вручную, используя следующие обозначения для указания, куда надо вставить те или иные значения для генерации:
@Formname@- имя файла формы (без расширения).@Codebehind@- имя файла codebehind (без расширения). Используется в aspx-файле. Совпадает с@Formname@по значению.@Namespace@- пространство имен класса генерируемой формы.@Classname@- имя класса генерируемой формы.@Classcaption@- заголовок типа, отображаемого на форме.@Formpath@- относительный (серверный) путь к генерируемой форме.@Typename@- имя типа, отображаемого на форме.@Viewname@- имя представления, заданного для генерируемой формы.@Editor@- путь к форме редактирования (для списковых форм).
Генерация с учётом пакетов
Чтобы структурировать папки, в которые будет выполнена генерация форм можно применить механизм разбивки по пакетам. Для этого у класса формы в CASEBERRY нужно указать свойство Packet. Это свойство будет использоваться для указания папки, в которую будет выполнена генерация файлов формы для этого класса. Эта папка будет находиться в папке forms проекта. В названии пакета нельзя использовать символы, которые недопустимы для имён файлов и путей до файлов. К свойству Packet транслитерация не применяется.
Примеры значений свойства Packet:
- Папка1
- Папка2\Папка 8
Если свойство Packet не указано, то файлы форм будут генерироваться в папку с именем объекта данных, для которого эта форма создана. При этом имя класса будет транслитерировано.