Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/22: Рейтинг темы: голосов - 22, средняя оценка - 4.55
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
1

Как использовать LINQ с базами SQLite

07.09.2014, 17:59. Просмотров 4211. Ответов 16
Метки нет (Все метки)

Здравствуйте, скажите пожалуйста, как использовать LINQ с базой данных SQLite? А то постоянно открывать/закрывать соединение, и писать все команды, как текстовые не очень удобно + LINQ интегрирован в C# =)
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.09.2014, 17:59
Ответы с готовыми решениями:

Есть какой-то аналог команды like (как при работе с базами данных) в LINQ
Добрый день. Подскажите, а есть ли какой - то аналог команды like (как при работе с базами данных)...

Как правильно использовать SQLite?
Есть БД SQLIte, 7 таблиц. В программе несколько методов по добавлению/удалению/изменению/получению...

DateTime, SQLite, как использовать?
Нужно хранить дату именно в формате DateTime в таблице SQLite Однако не получается ни добавить...

SQLite + Linq to DataSet
Как создать строго-типизированный DataSet для БД SQLite, которая создается только при первом...

SQLite, LINQ и привязка данных
Впервые собираюсь использовать БД в своем приложении. Проект Windows Forms, в центре внимания две...

16
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 19:41 2
maxkoshevoi, по-моему, при установке пакета SQLite есть две либы - System.Data.SQLite.dll и System.Data.SQLite.Linq.dll. Не пробовали их подключить?
0
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 19:57  [ТС] 3
Цитата Сообщение от insite2012 Посмотреть сообщение
Не пробовали их подключить?
Да, да, их две, и я все подключил, но и SQLite и LINQ для меня ещё неосвоенные территории (как работать я знаю, но опыта почти нет), так что даже подключив вторую библиотеку, я не знаю, как её использовать =)
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 20:26 4
maxkoshevoi, вот вам архив с простым примером, думаю разберетесь. Простая база SQLite там же.
Получаем из базы таблицу, и через Linq to DataSet отбираем из нее тех, кто совпадает по фамилии.
0
Вложения
Тип файла: rar Архив WinRAR.rar (27.4 Кб, 134 просмотров)
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 21:32  [ТС] 5
Не работает =(
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 21:33 6
Цитата Сообщение от maxkoshevoi Посмотреть сообщение
Не работает =(
maxkoshevoi, что именно не работает? У меня все работает.
0
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 21:37  [ТС] 7
Ну, сначала, естественно, показало отсутствие сборок (в проекте же их физически не было), я подключил свои, но при первом запуске открывается окно поиска файла с просьбой найти "оригинальный файл Program.cs", а во всех остальных запусках просто выдаёт ошибку на этой строчке
C#
1
dAdapter.Fill(dt);
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 21:44 8
Лучший ответ Сообщение было отмечено maxkoshevoi как решение

Решение

maxkoshevoi, может ваша версия библиотек не подходит? Вот новый архив, с библиотеками внутри. Проверил на 2-х компьютерах (на втором SQLite вообще не установлен), все работает.
1
Вложения
Тип файла: rar Архив WinRAR.rar (499.6 Кб, 183 просмотров)
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 22:00  [ТС] 9
Теперь всё работает спасибо, но я не совсем понимаю, почему мы получаем значение таким образом:
C#
1
p.Field<int>("ID")
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 22:22 10
Цитата Сообщение от maxkoshevoi Посмотреть сообщение
почему мы получаем значение таким образом:
Иначе нам бы пришлось каждое значение явно приводить к его типу (int, string). Этот метод позволяет этого не делать.
1
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 22:35  [ТС] 11
И тогда последний вопрос, где вы берёте ваши библиотеки (мои же не работают)?
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 22:52 12
Цитата Сообщение от maxkoshevoi Посмотреть сообщение
где вы берёте ваши библиотеки
Так все там же, на оффсайте SQLite. Они там по версиям .NET расписаны даже.
0
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 22:56  [ТС] 13
так я вроде там и скачивал...
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 22:57 14
Цитата Сообщение от maxkoshevoi Посмотреть сообщение
так я вроде там и скачивал...
http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki
Выбирайте)))
0
maxkoshevoi
67 / 67 / 23
Регистрация: 07.11.2013
Сообщений: 539
07.09.2014, 22:58  [ТС] 15
Да, да, именно отсюда =)
Этот файл: sqlite-netFx40-setup-bundle-x64-2010-1.0.93.0.exe
0
insite2012
Модератор
Эксперт .NET
4878 / 3831 / 1096
Регистрация: 12.10.2013
Сообщений: 11,100
Записей в блоге: 2
07.09.2014, 23:00 16
maxkoshevoi, я скачивал и устанавливал вот эту:
Setups for 32-bit Windows (.NET Framework 4.0), первая ссылка.
1
babaevkamil
5 / 5 / 3
Регистрация: 17.10.2012
Сообщений: 116
Завершенные тесты: 1
11.03.2016, 00:22 17
insite2012, Извиняюсь за некропостинг, но в вашем примере только получение данных из базы и работа с ними уже в коллекции. А можно ли как-то через LINQ и отправлять запросы типо записи данных в таблицу или создание таблицы? (INSET INTO и CREATE)
0
11.03.2016, 00:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2016, 00:22

Linq to Sqlite обновление данных
Всем привет. Пишу приложение на переносимой БД для учета магазина (покупка и продажа товаров)....

Стоит ли использовать LINQ?
Стоит ли использовать LINQ + БД? Какие есть грабли, подводные камни и прочие костыли при сравнении...

В Entity Framework использовать SQLite
Доброе время суток! Пытаюсь использовать Entity Framework в VS2013 с БД sqlite. Добавляю к проекту...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru