Общие принципы генерации форм

Для каждой формы генерируется 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 не указано, то файлы форм будут генерироваться в папку с именем объекта данных, для которого эта форма создана. При этом имя класса будет транслитерировано.