Как вы генерируете классы в C # из схемы SQL Server? - PullRequest
3 голосов
/ 29 мая 2009

У меня есть база данных sql, и я хочу создать класс для каждой таблицы. Я думаю, что существует инструмент, который позволяет мне извлекать информацию из базы данных SQL и преобразовывать ее в классы, такие как «DataTable» или «DataRow». После этого я мог бы использовать этот объект в наборе данных.

Ответы [ 8 ]

3 голосов
/ 29 мая 2009

Вместо таблиц данных и наборов данных вы можете использовать свои собственные объекты для представления данных в ваших приложениях, а для этого вы можете использовать некоторые персистентные структуры и OR-сопоставители (объектно-реляционные сопоставления). Например, вы можете использовать "Linq to Sql" "," Microsoft Entity Framework "или NHibernate.

Существуют некоторые инструменты генерации кода, которые позволяют генерировать код для этих платформ.

MyGeneration и CodeSmith как два из них, которых я знаю.

1 голос
/ 24 апреля 2015

Я создатель SqlSharpener , который является легким инструментом, который будет анализировать ваши * .sql файлы (как в проекте SSDT) ​​и создавать объекты DTO и оболочки хранимых процедур во время разработки. используя шаблоны T4.

1 голос
/ 29 мая 2009

Существует целый мир инструментов, которые делают подобные вещи. Это называется ORM. Джош упомянул Subsonic, который является отличным бесплатным инструментом. Существует также Entity Framework, которая является частью Visual Studio 2008 SP1. Если вам нужен еще лучший инструмент, я предлагаю вам использовать LLBLGen.

Надеюсь, это поможет!

1 голос
/ 29 мая 2009
0 голосов
/ 29 мая 2009

Если вы хотите написать собственный генератор кода, можно использовать объекты SMO, если вы используете MS Sql Server 2005/2008, и извлекать информацию из объектов таблиц / хранимых процедур.

0 голосов
/ 29 мая 2009

Мы движемся в направлении Entity Framework, но не торопимся, потому что мы не находим EF готовым к прайм-тайму, а Linq2Sql является более или менее плохим инструментом ORM для людей и любителей. В настоящее время мы используем комбинацию собственного доморощенного фреймворка (The Kinetic Framework) и Fluent NHibernate.

0 голосов
/ 29 мая 2009

Как насчет старого доброго Линка? Начало здесь .

0 голосов
/ 29 мая 2009

Попробуйте SubSonic

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...