Может ли LINQ To SQL использоваться для другой базы данных (MySQl, Oracle и т. Д.) - PullRequest
1 голос
/ 27 августа 2010

У меня есть проект, созданный с помощью WPF и для базы данных O / RM с использованием LINQ to SQL, когда я заканчиваю свой проект, некоторые люди хотят использовать MySQL в качестве базы данных, поэтому я могу изменить свой Linq на MySQL без изменения какого-либо исходного кода (может быть, просто изменить строку подключения)

Привет

Ответы [ 2 ]

1 голос
/ 27 августа 2010

Нет, ты не можешь. LINQ to SQL как инструмент O / RM разработан * исключительно для использования с базой данных SQL Server, и Microsoft не добавит поддержку нескольких баз данных в будущем. Если вам это нужно и вам нужна поддержка LINQ для снижения, вам будет лучше с Microsoft Entity Framework.

<ч />

** Команда C # действительно спроектировала LINQ to SQL как базу данных с несколькими базами данных. Вы все еще можете увидеть этот дизайн, когда посмотрите на сборку System.Data.Linq в Reflector. Однако по некоторым причинам (читай: маркетинг) Microsoft решила не разрешать поддержку нескольких баз данных в LINQ to SQL. Модель провайдера, которую использует LINQ to SQL, была усвоена. Хотя в теории все еще возможно создать альтернативного поставщика для других баз данных, когда ваше приложение работает с полным доверием; это так тяжело и больно, что я никогда не видел, чтобы кто-нибудь даже попробовал. Как я уже говорил, если для вашего приложения требуется поддержка нескольких поставщиков, вам следует использовать инструмент O / RM, специально разработанный для этого. *

0 голосов
/ 27 августа 2010

Вам понадобится поддержка 3. партии.http://www.devart.com продает драйверы БД для различных баз данных и включает поддержку Entity и LINQ to SQL.Там также http://code.google.com/p/dblinq2007/ и http://www.alinq.org/

...