Метаданные сущностей
От: baranovda Российская Империя  
Дата: 17.09.09 13:57
Оценка:
Хочется смастерить автомат UI для редактирования простых сущностей (справочников и т.п.). Самописный конструктор автоматических форм писать неохота, для этих целей вполне подойдет PropertyGrid или коммерческие компоненты, умеющие строить UI по метаданным объекта.

Есть модель Linq2SQL, сгенерированная утилитой SqlMetal.

Задача такая: вытащить из БД MSSQL метаописание таблиц и колонок и пометить классы и свойства сущностей атрибутами типа DisplayName, Description и т.п.

Задача решается как минимум четырьмя способами:

1) Пропарсить .cs — файл модели регулярными выражениями
2) Смастерить автомат для генерации прокси для каждой сущности
3) Отнаследовать классы модели от ICustomTypeDescriptor
4) Написать класс, аггрегирующий объект модели в прокси, который в свою очередь реализует ICustomTypeDescriptor и выставляет "подменённые" свойства PropertyGrid

Что будет красивше с точки зрения архитектуры и удобства сопровождения?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.