Запросите Microsoft Access База данных MDB с помощью LINQ и C#

36
задан GEOCHET 20 September 2012 в 19:11
поделиться

4 ответа

То, что Вы хотите, является LINQ поставщику ODBC или LINQ поставщику JET/OLEDB.

Из поля, MS не делает то. Может быть третья сторона, которая делает.

14
ответ дан FlySwat 27 November 2019 в 06:14
поделиться

LINQ к SQL только работает на базы данных SQL Server. То, в чем Вы нуждаетесь, является Microsoft Entity Framework. Это делает объектно-ориентированный доступ к Вашему mdb. От этого можно выполнить запросы LINQ.

http://msdn.microsoft.com/en-us/library/aa697427 (по сравнению с 80) .aspx

0
ответ дан GeekyMonkey 27 November 2019 в 06:14
поделиться

На самом деле я недавно (сегодня) обнаружил что вы можете получить доступ к базе данных Access с помощью LinqToSql. Он должен быть в формате 2002 года или новее, вы не сможете перетаскивать таблицы в свой текст данных, поэтому либо вручную создайте объекты в своем dbml, либо вы можете использовать SQL Server Migration for Access, чтобы переместить его на сервер sql и затем перетащите все, что хотите. Если вы действительно хотите создать контекст, передайте ему OleDbConnection. Используйте стандартную строку подключения Jet.OLEDB.4.0 в OleDbConnection, и все готово. Однако не уверен в ограничениях, которые могут возникнуть. Я просто сделал быстрый образец и без проблем выполнил OrderBy.

13
ответ дан 27 November 2019 в 06:14
поделиться

Вы можете использовать DataSet. Существуют расширения linq, которые позволят вам запрашивать данные с помощью всего того LINQ, к которому мы привыкли :)

eICATDataSet.ICSWSbuDataTable tbl = new eICATDataSet.ICSWSbuDataTable();

ICSWSbuTableAdapter ta = new ICSWSbuTableAdapter();
ta.Fill(tbl);

var res = tbl.Select(x => x.ProcedureDate.Year == 2010);
1
ответ дан 27 November 2019 в 06:14
поделиться
Другие вопросы по тегам:

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