Я планирую написать генератор кода для создания пользовательского интерфейса (формы, сетки и т. Д.). Поскольку я использую LINQ, я планирую прочитать файл DBML для целей извлечения метаданных. Есть ли какой-нибудь API для чтения объектной модели DBML (базы данных, таблиц, столбцов и ассоциаций)?Как читать файл DBML и отображать его в объектную модель в .NET?
Я открыл SQLMetal.exe
с Red Gate Software.NET Reflector. Он содержит пространство имен, называемое LinqToSqlShared.DbmlObjectModel
, и, похоже, оно содержит все, что мне нужно, чтобы прочитать объектную модель DBML. Плохая новость заключается в том, что пространство имен не отображается для внешнего потребления, а все классы объявляются как «Друг» (или запечатаны).
Еще раз, что-то существует, например, пространство имен LinqToSqlShared.DbmlObjectModel
, чтобы прочитать DBML объектной модели в .NET.? Или мне нужно написать это сам?
Excelent !, это именно то, что я хотел сделать. Класс Data делает фантастическую работу для меня. Однако для реализации в файле .tt требуется некоторое взаимодействие с человеком, я действительно хочу создать инструмент командной строки для автоматического создания классов и даже пользовательских интерфейсов. На данный момент я изолировал класс [Data] в dll для работы в vb.net (с которым я знаком;) Я расскажу вам, как это происходит. спасибо за такой фантастический кусок кода. вы сохраняете несколько недель работы. Я должен вам пиво. –