Skip to content
Sergey Shpakovskiy edited this page Oct 13, 2017 · 2 revisions

Welcome to the AspWebGen wiki!

ASP.NET Web Form generation framework - представляет из себя генератор исходных кодов для технологий: ASP.NET WebForms, MS SQL и компонент Ext.Net. Идея заключается в генерации для каждой таблицы/представления модели данных: источника данных, таблицы (журнала), фильтра, логики и формы редактирования, при том что полноценную форму можно получить без написания кода.

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

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

Поля формы валидируются в соответствии с настройками модели данных, тип, длина, ссылочные значения. Формы могут быть как простые, так и более сложные по компоновке и логике заполнения. Поля могут скрываться, фильтроваться от значений других полей формы, по описанным условиям в логике. Которая отрабатывает как на стороне клиента (JavaScript), так и на стороне сервера. По условиям можно настроить обязательность, видимость, только чтение, Disabled для полей формы.

В настройках у таблиц, колонок и других объектов есть множество атрибутов, которые настраивают генерируемые исходные коды. Дополнительная логика описывается с помощью partial class и partal method. Где отдельный класс для формы редактирования, таблицы данных (журнал), фильтра и источника данных. Данный подход позволяет даже не зная подсистемы быстро внести необходимые корректировки, будь то ошибки или новые требования, что облегчает поддержку и развитие системы.

Добавление или удаление полей не создает проблем, т.е. в рабочей системе при обычном подходе добавить поле выливается в большое кол-во человеко-часов, как на разработку, так и на тестирование. Что зачастую для заказчика является не оправдано большим.

Более детальное описание каждого затронутого вопроса в других разделах wiki.

Clone this wiki locally