This project is read-only.

Using Entity Framework

Coordinator
Oct 14, 2009 at 10:20 PM

Entity Framework 3-Tier

 

http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/b3fd85a4-503d-4d16-baa4-a575c7c85ed5

 

So perhaps the best place to go to get an understanding is Danny Simmons blog, in particular his posts about his EntityBag sample.

 

http://blogs.msdn.com/dsimmons/archive/2008/01/20/entitybag-part-i-goals.aspx

http://blogs.msdn.com/dsimmons/archive/2008/01/20/entitybag-part-ii-modes-and-constructor.aspx

http://blogs.msdn.com/dsimmons/archive/2008/01/21/entitybag-part-iii-public-surface-and-serialization.aspx

http://blogs.msdn.com/dsimmons/archive/2008/01/22/entitybag-part-iv-contextsnapshot-fields-and-properties.aspx

http://blogs.msdn.com/dsimmons/archive/2008/01/23/entitybag-part-v-contexsnapshot-constructing-and-applying.aspx

http://blogs.msdn.com/dsimmons/archive/2008/01/24/entitybag-part-vi-relationshipentry.aspx

http://blogs.msdn.com/dsimmons/archive/2008/01/28/entitybag-wrap-up-and-future-directions.aspx

Coordinator
Oct 14, 2009 at 10:41 PM

Entity-framework-metadata-resources

http://netsideout.blogspot.com/2009/08/entity-framework-metadata-resources.html

When you create an EF model, the metadata is defined in an .EDMX file. This file contains three sections:

  1. SSDL = storage model: defines the 'shape' of the database in which the data is stored. This includes the tables, their columns and the relationships between tables. All data types are defined in database types e.g., varchar.
  2. CSDL = conceptual model: defines the 'shape' of your entity model. This includes the classes, their properties, and the relationship between classes. All data types are defined in .Net types e.g., System.String or System.Int32.
  3. MSL = mapping model: describes how the conceptual model is mapped onto the storage model. E.g., each property in the conceptual model is mapped to a column in the storage model.

Where does all this information go?

When you compile a project that contains an .EDMX file, three resources are embedded into your assembly. Not surprisingly, these resources are yourContainer.SSDL, yourContainer.CSDL, and yourContainer.MSL (where yourContainer is the name of your entity container). If you open your assembly in .Net Reflector you'll see they contain, verbatim, the XML from each section of the .EDMX.

 

Coordinator
Oct 15, 2009 at 12:32 PM

Very  usefull resource to quickly get started with Entity FrameWork

 

http://chabster.blogspot.com/2008/09/entity-framework-splendour-and-misery.html

 

Entity Framework уже больше года блуждает призраком по просторам интернета. Несколько CTP-шек, несколько Beta-версий, абстрактные разговоры о его безграничных возможностях и куча примеров в стиле Hello World, которыми автора, наверное, хотят продемонстрировать нам всю мощь LINQ to Entities или удивить своими обширными познаниями. Я поигрался несколько дней и далее вы прочитаете мои открытия и впечатления.

Что такое Entity Framework

Маркетологи Microsoft уверяют нас, простых смертных программистов, что Entity Framework - начало нового века, что <q>it's the first step in a much larger vision of an entity-aware data platform</q>. А люди, которые на этом собаку съели, не верят. И я не верю. Entity Framework в текущем виде представляет собой не что иное, как OR/Mapper, причем слабенький. С другой стороны, учитывая политику Microsoft, Entity Framework будет развиваться и обрастать. Уже заявлено начало работ над 2-й версией. Вероятнее всего, дальнейшая архитектура data-driven приложений и фреймворков будет строиться именно на Entity Framework.

Бороздя просторы интернета, я наткнулся на ADO.NET Entity Framework Vote of No Confidence - петиция к Microsoft по поводу проблем Entity Framework. Советую почитать, если есть время. Забавно просто очень - целая петиция.

Состав Entity Framework

Entity Framework состоит из таких основных компонентов:

  1. Дизайнер Visual Studio 2008 SP1
  2. Кодогенератор, входит в .NET Framework 3.5 SP1
  3. Библиотеки поддержки, входит в .NET Framework 3.5 SP1

Рекомендую сразу взлгянуть на раздел (я этого не делал и, кстати, жалею - там много полезного написано для начального изучения) MSDN --> MSDN Library --> Development Tools and Languages --> Visual Studio 2008 --> Visual Studio --> .NET Framework Programming in Visual Studio --> Accessing Data --> ADO.NET --> Entity Data Model Tools.

Visual Studio 2008 Entity Framework Visual Designer

Visual Studio 2008 SP1 позволяет визуально редактировать модель Entity Framework, которая состоит из 3-х частей:

  1. Conceptual Schema - CSDL-файл, описывающий сущности и отношения между ними.
  2. Storage Metadata Schema - SSDL-файл, описывающий схему базы данных.
  3. Mapping Specification - MSL-файл, связывающий сущности и способ их хранения в реляционной БД.

Все эти файлы представляют собой обычный XML, что позволяет в будущем неограниченно расширять формат, добавляя новые функции и расширения.

Информация, заложенная в этих файлах, называется Entity Data Model, или сокращенно - EDM.

 

....