Вопрос по entity-framework, c# – Entity Framework - Генерация классов

60

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

Есть ли способ генерировать файлы классов из существующей базы данных, используя Entity Framework? Если так, то как? Может кто-нибудь указать мне на учебник?

Видеть этоstackoverflow.com/questions/9876619/… AmirHossein

Ваш Ответ

4   ответа
1
Open the EDMX model Right click -> Update Model from Browser -> Stored Procedure -> Select your stored procedure -> Finish See the Model Browser popping up next to Solution Explorer. Go to Function Imports -> Right click on your Stored Procedure -> Add Function Import Select the Entities under Return a Collection of -> Select your Entity name from the drop down Build your Solution.
Error: User Rate Limit Exceeded
1

Модель EDMX не будет работать с EF7, но я нашел продукт Community / Professional, который кажется очень мощным: http://www.devart.com/entitydeveloper/editions.html

117

1) Сначала нужно сгенерироватьEDMX модель с использованием вашей базы данных. Для этого вам необходимо добавить новый элемент в ваш проект:

  • Select ADO.NET Entity Data Model from the Templates list.
  • On the Choose Model Contents page, select the Generate from Database option and click Next.
  • Choose your database.
  • On the Choose Your Database Objects page, check the Tables. Choose Views or Stored Procedures if you need.

Итак, теперь у вас естьModel1.edmx файл в вашем проекте.

2) Для генерации классов с использованием вашей модели:

  • Open your EDMX model designer.
  • On the design surface Right Click –> Add Code Generation Item…
  • Select Online templates.
  • Select EF 4.x DbContext Generator for C#.
  • Click ‘Add’.

Обратите внимание, что в ваш проект добавлены два элемента:

  • Model1.tt (This template generates very simple POCO classes for each entity in your model)
  • Model1.Context.tt (This template generates a derived DbContext to use for querying and persisting data)

3) Пример чтения / записи данных:

 var dbContext = new YourModelClass(); //class derived from DbContext
 var contacts = from c in dbContext.Contacts select c; //read data
 contacts.FirstOrDefault().FirstName = "Alex"; //edit data
 dbContext.SaveChanges(); //save data to DB

Не забудьте, что вам нужна версия EntityFramework 4.x. Вы можете скачать EF 4.1 здесь:Entity Framework 4.1.

Error: User Rate Limit Exceeded
Error: User Rate Limit ExceededModel1.ttError: User Rate Limit ExceededModel1.Context.ttError: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
Error: User Rate Limit Exceeded
16

Я нашел очень хорошее решение. Microsoft выпустила бета-версию Entity Framework Power Tools:Entity Framework Power Tools Beta 2

Там вы можете сгенерировать POCO-классы, производные DbContext и Code First для существующей базы данных за несколько кликов. Очень мило!

После установки некоторые опции контекстного меню будут добавлены в вашу Visual Studio.

Щелкните правой кнопкой мыши проект C #. Выберите Entity Framework- & gt; Обратный код инженера сначала (генерирует классы POCO, производное отображение DbContext и Code First для существующей базы данных):

Visual Studio Context Menu

Затем выберите вашу базу данных и нажмите ОК. Вот и все! Это очень просто.

Похожие вопросы