Существующие помощники базы данных T4 для извлечения схемы БД - PullRequest
1 голос
/ 12 мая 2009

Знаете ли вы какой-нибудь шаблон T4, который предоставил бы мне основные методы и свойства схемы БД (GetTables, GetColumns, MapSqlTypesToClr и т. Д.)?

Я знаю, что эту информацию легко получить, но вокруг нее много дополнительных вспомогательных функций, так зачем изобретать велосипед?

Ответы [ 3 ]

1 голос
/ 03 февраля 2010

Возможно, вы уже получили это, но я оставлю здесь возможное решение.

SubSonic 3 использует T4 для генерации кода, его инспектора БД должно быть более чем достаточно для вас. Посмотрите на: http://subsonicproject.com/

0 голосов
/ 04 марта 2010

Вот шаблон T4, который выгружает схему в статическую библиотеку классов c #, которая может делать то, что вы пытаетесь выполнить: фрагмент кода codepaste.net

Я не мог вставить код здесь, потому что подсветка синтаксиса не любит теги T4 (кто делает?).

Это позволит вам получить имя столбца следующим образом:

string columnName= dbSchema.Tables.Products.Columns.QuantityPerUnit.ColumnName;
0 голосов
/ 27 июля 2009

Не уверен, где во всем этом место для T4, но вы можете попробовать Wizardby : он может выполнить обратный инжиниринг схемы базы данных и вернуть хороший Schema объект со всеми таблицами и колонны. Что касается сопоставления DbType s с типами CLR, вам понадобится соответствующий IDbTypeMapper (думаю, SqlServer2005TypeMapper подойдет).

...