Какую проблему Microsoft пытается решить со всеми этими стратегиями доступа к данным?

Я проявляю многоярусный подход с первым уровнем, являющимся разумным смещением удобочитаемости только сложностью решаемой проблемы. Если это не может пройти тест удобочитаемости, я обычно считаю код менее, чем хорошим.

12
задан 2 revs, 2 users 100% 12 July 2009 в 22:29
поделиться

5 ответов

У них веками была стратегия обработки данных. Фактически, вы можете и должны искать «Стратегию доступа к данным Microsoft», и вы найдете старые и новые ссылки (например, 1998 год и их стратегия OLEDB).

Я думаю, что вы ищете здесь с 2007 года, который, несмотря на то, что ему 2 года, касается XML, ADO.NET, данных, LINQ, SQL Server, Visual Studio Orcas, Entity Framework. ..они отвечают на вопрос Есть ли у Microsoft стратегия доступа к данным? :

Да, оказывается, у нас есть. Microsoft предусматривает платформу Entity Data Platform, которая позволяет клиентам определять общие Модель данных сущности в сервисах данных и приложения. Данные сущности Платформа - это видение нескольких выпусков, с будущими версиями отчетов инструменты, репликация, определение данных, безопасность и т. д. все строится вокруг общая модель данных сущности. ...

Майк Пиццо, архитектор, Data Программируемость

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

3
ответ дан 2 December 2019 в 05:41
поделиться

Они пытаются решить проблему увеличения продаж и доли рынка. С этой целью различные группы внутри Microsoft пытаются решить проблему, как привлечь больше разработчиков и конечных пользователей к использованию их продуктов. Разные группы придумывают разные технологии, и, как и любая крупная компания, Microsoft изо всех сил пытается поддерживать согласованность своих технологий, а группы работают над достижением одной цели. Кроме того, по мере появления новых технологий им необходимо поддерживать (или, что еще лучше, задавать) темп, а также продолжать поддерживать старые технологии, в которые инвестировали их клиенты. Конечным результатом для любой достаточно крупной компании, включая Microsoft, является несколько запутанный выбор технологий.

5
ответ дан 2 December 2019 в 05:41
поделиться

Я не вижу смысла в этом вопросе. На самом деле, это немного троллинг.

  • ADO.NET - это оригинальная технология доступа к данным из .NET 1.0. Это явно не относится к обсуждению новых "стратегий" доступа к данным
  • . LINQ to SQL является одним из исходных поставщиков LINQ. Он обеспечивает однозначное соответствие между структурами базы данных и типами, используемыми в программе. Он был предназначен для работы с SQL Server
  • . ADO.NET Entity Framework более гибкий. Он был предназначен для работы с любым поставщиком ADO.NET и имеет слой сопоставления, так что программа работает с классами, которые ближе к бизнес-объектам, чем к таблицам базы данных. Например, один объект может включать данные из нескольких таблиц. Microsoft решила потратить больше усилий на EF, чем на LINQ to SQL.
  • ADO. NET Data Services - это уровень служб над EF. Если вы собирались создать свой собственный сервис, который будет делать не что иное, как раскрытие ваших данных, то это достойная ставка. Он использует интерфейс REST и может предоставлять данные в формате ATOM.
  • ASP.NET Динамические данные не являются стратегией доступа к данным. См. http://www.asp.net/dynamicdata/ .

Различия достаточно ясны, чтобы их прояснить тривиальное количество исследований.

15
ответ дан 2 December 2019 в 05:41
поделиться

Ваше замешательство - это наше разочарование. Многие из нас, кто принимает эти архитектурные решения для наших веб-сайтов, вскинули руки из-за отсутствия у Microsoft ясности и передовых методов разработки по этому вопросу.

Linq2Sql определенно обожгла мою команду.

Теперь мы создаем наш веб-сайт с использованием подхода Domain Driven Design и, в частности, луковой архитектуры Палермо ( http://jeffreypalermo.com/blog/the-onion-architecture-part-1/ ). Бизнес-объекты - это просто POCO, которые не зависят от инфраструктуры.

Инфраструктура теперь обрабатывается NHibernate и настраиваемым ORM для нашей CMS. Болезненные затраты на их запуск намного перевешиваются знанием того, что сообщество будет продолжать продвигать NHibernate в лучшем направлении, и мы контролируем источник нашей ORM.

3
ответ дан 2 December 2019 в 05:41
поделиться

Я нахожу статью на http://msdn.microsoft.com/en-us/magazine/cc700331.aspx хорошим техническим введением в Entity Framework, если вы ' я не знаком с основными концепциями.

Вот раздел, имеющий отношение к этому вопросу, объясняющий некоторые цели EF и отношения к ADO.Net ...

ADO.NET Entity Framework - это эволюция ADO. NET и первая конкретная реализация EDM, обеспечивающая более высокий уровень абстракции при разработке на основе реляционной базы данных. В версии 1.0 команда была сосредоточена на создании основы платформы, а не просто на простом ORM, который позволит разработчикам работать с концептуальной или объектной моделью с очень гибким отображением и возможностью адаптации к высокой степени. отклонения от основного магазина.

Такая высокая степень гибкости и отличия от базового хранилища является ключом к тому, чтобы база данных и приложения могли развиваться отдельно. Когда в схему базы данных вносятся изменения, приложение изолируется от изменения Entity Framework, и вам часто не требуется переписывать части приложения, а просто обновлять файлы сопоставления, если необходимо, чтобы учесть это изменение.

Чтобы начать развитие платформы ADO.NET, Entity Framework строится на основе существующей модели поставщика ADO.NET 2.0, при этом существующие поставщики слегка обновляются для поддержки новой функциональности Entity Framework и ADO.NET 3.5. Мы решили реализовать поверх существующей модели поставщика ADO.NET, чтобы обеспечить модель поставщика, знакомую сообществу разработчиков.

1
ответ дан 2 December 2019 в 05:41
поделиться
Другие вопросы по тегам:

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