Такая задача : дается бд sql, нужно вытащить структуру и по нему создать модель используя Entity Framework.
Вытащить структуру можно путем GetSchemaTable, если я правильно понял, потом нужно составить модель, модель - это класс, который содержит, как правило, свойства, например id, name и тп. Спрашивается, зачем тут Entity Framework ? он ведь нужен, что бы применить данную модель. Или я чего-то не понял или хз. Можете помочь разобраться ?
1. И пожалуй главная - это маппинг. В реляционных СУБД нет объектов в понимании ООП дотнета и наоборот. EF обеспечивает прозрачную конвертацию одного в другое. Причем уровень абстракции позволяет не заморачиваться движок какой СУБД прячется за ORM (тут есть нюансы, но в целом если имеется драйвер, то в качестве базы можно подсунуть EF хоть самописную поделку).
2. LinqToEntity - обеспечивает то, что запросы к бд синтаксически выглядят как обычные linq-запросы к коллекции (ну почти...). Т.е. превращаться в гуру [T-]SQL совсем не обязательно, со всеми вытекающими плюсами и минусами.
3. Гибкий подход к проектированию. Хотите DbFirst, хотите CodeFirst, а для совсем ленивых и ModelFirst в загашнике имеется. В принципе никто не мешает все совмещать, но это для гурманов.