ADO .NET, Entity Framework и LINQ to SQL - я запутался - PullRequest
3 голосов
/ 09 декабря 2010

Мне нужно расположить эти понятия в своей голове:

Является ли Entity Framework "новым" ADO .NET? В чем разница между этими двумя терминами? И как LINQ to SQL связан с каждым из них? Является ли это частью структуры сущности?

Ответы [ 3 ]

5 голосов
/ 09 декабря 2010

Entity Framework - это O / R mapper, который построен поверх ADO.NET.LINQ to SQL - это еще один альтернативный подход сопоставления O / R, но, насколько мне известно, в будущем Microsoft использует Entity Framework, а не LINQ to SQL.

3 голосов
/ 09 декабря 2010

Как уже говорили многие респонденты, LINQ 2 SQL и Entity Framework основаны на ADO.NET. У Microsoft не было присутствия в пространстве объектно-реляционного сопоставления (ORM). После выпуска LINQ было разработано решение для ограничения пробелов в форме LINQ 2 SQL. Это работает только с базой данных SQL Server.

Entity Framework можно назвать первой настоящей ORM от MS, которая может работать со всеми базами данных, совместимыми с SQL. Кривая обучения очень мала, если кто-то знает о LINQ 2 SQL. Microsoft рекомендует, чтобы для всех будущих решений, связанных с доступом к данным, Entity Framework должен быть идеальным выбором.

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

3 голосов
/ 09 декабря 2010

ADO.NET является частью .NET Framework. Он состоит из нескольких библиотек, которые могут управлять доступом к системам баз данных.

LINQ to SQL является своего рода переводчиком, который позволяет вам использовать таблицы базы данных как объекты. Это часть .NET 3.5 Framework. Он переведет объектные запросы в sql. Доступ к базе данных также может быть ADO.NET.

Entity Framework (он же ADO.NET Entity Framework ) - это платформа ORM, которая означает, что она создаст вам слой между сущностями и базой данных, доступ к базе данных будет ADO .NET (хотя это может быть что-то еще)

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