LINQ с SQLite (linqtosql) - PullRequest
       19

LINQ с SQLite (linqtosql)

57 голосов
/ 30 октября 2008

У меня небольшой проект, требующий хранилища (я выбираю SQLite), и я получил хороший результат с ADO DLL для .Net для Sqlite .

После установки я заметил, что он содержит SQLLinq.dll. Прежде чем исследовать слишком много усилий, и поскольку я не вижу ни одного хорошего примера в Интернете, я хотел бы знать, получил ли кто-нибудь хороший результат с SQLite и LINQ?

* Если linqtosql работает так же, как и база данных SQL, дайте мне знать. Мне было интересно с Dll, когда я увидел его, потому что я никогда не использовал Linqtosql раньше, и я подумал, что это будет отличная возможность попробовать,

Ответы [ 9 ]

49 голосов
/ 20 января 2009

Я недавно обнаружил DBLinq , который поддерживает SQLite среди других БД:

10 голосов
/ 05 ноября 2009

Исходя из моего собственного опыта, Microsoft SQL Compact Framework НАСТОЯЩИЙ НЕТ-GO. Он действительно очень медленный, а его Query Analyzer просто очень плохой. Мне пришлось попросить мою команду переписать весь сантехнический код моего компонента Windows Mobile, чтобы избавиться от ужасной производительности SQL CE.

8 голосов
/ 30 октября 2008

LINQ to SQL поддерживает только SQL Server / Compact, однако, возможно, что люди SQLite написали своего собственного поставщика LINQ с указанием имени сборки.

Если это так, вы можете использовать синтаксис запроса LINQ, добавив ссылку на него, но вы не получите специальные функции LINQ to SQL, такие как DataContext / designer / SQL Metal / атрибуты Column / EntitySet / EntityRef и т.д.

4 голосов
/ 14 октября 2013

Я знаю, что этот вопрос старый, но в настоящее время, я думаю, мы можем найти официальную реализацию поддержки SQLite для .NET здесь: http://system.data.sqlite.org/index.html/doc/trunk/www/index.wiki. Хорошую вводную статью следует найти здесь: http://www.codeproject.com/Articles/236918/Using-SQLite-embedded-database-with-entity-framewo

3 голосов
/ 30 октября 2008

Это не ответ на ваш вопрос как таковой, но в качестве альтернативы вы можете использовать SQL Compact:

http://www.microsoft.com/Sqlserver/2005/en/us/compact.aspx

Имеет хорошую поддержку LINQ-to-SQL и (несмотря на название) отлично подходит для настольных приложений с небольшими требованиями к хранилищу.

2 голосов
/ 22 июля 2015

В NuGet есть пакет под названием «LINQ to SQLite». Я не пробовал, но кажется свежим.

https://www.nuget.org/packages/linq2db.SQLite/

1 голос
/ 22 марта 2017

С EntityFramework 7 улучшена поддержка SqLite, и можно использовать EntityFramework.Commands для создания некоторых миграций. Вот учебник:

https://xamlbrewer.wordpress.com/2016/06/01/getting-started-with-sqlite-and-entity-framework-on-uwp/

В качестве обязательного условия должен быть установлен как минимум PowerShell3.

1 голос
/ 14 августа 2009

это хорошая ссылка на sqlite ..

http://www.devart.com/dotconnect/sqlite/

0 голосов
/ 09 июня 2015

Поскольку DBLinq больше не поддерживается, я продолжил поиск и нашел этот ответ , который неясным образом указывает на решение с использованием Linq to Sql, Entity Framework и SQLite. сообщение в блоге , на которое он ссылается, немного устарело, но с некоторыми изменениями я получил рабочий пример на GitHub.

Он должен запускать OOTB в Visual Studio 2013. Он показывает добавление записи (со связанной записью в другой таблице), изменение и удаление. Классы Artist и Album представляют записи в соответствующих таблицах (я полагаю, это часть Entity Framework). Смотрите readme для нескольких ошибок, за которыми нужно следить.

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