2011-09-22 3 views
1

가능한 중복 :
Query Microsoft Access MDB Database using LINQ and C#쿼리 MS 액세스 데이터베이스

임 MS 액세스 데이터베이스 작업을하고 난이 데이터베이스를 쿼리하는 데 LINQ를 사용할 수 있는지 알고 싶어? 나는 데이터 세트에 관해 읽었지만 이것을 읽음으로써 : http://blogs.msdn.com/b/adonet/archive/2007/01/26/querying-datasets-introduction-to-linq-to-dataset.aspx 나는 데이터베이스의 많은 부분이 데이터 세트를 통해 접근 할 수 없다는 것을 알았다. 아무도 내가 이걸 어때 갈 수 있을지에 관해서 나를 도울 수 있습니까? 감사합니다 :)

+0

다음을 읽어보십시오. http://stackoverflow.com/questions/295772/query-microsoft-access-mdb-database-using-linq-and-c – adatapost

답변

3

불행히도 LINQ는 액세스 데이터베이스를 지원하지 않습니다. 당신의 주위에 작업 데이터베이스

//create the connection string 
string connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\myDatabase.mdb"; 

//create the database query 
string query = "SELECT * FROM MyTable"; 

//create an OleDbDataAdapter to execute the query 
OleDbDataAdapter dAdapter = new OleDbDataAdapter(query, connString); 

//create a command builder 
OleDbCommandBuilder cBuilder = new OleDbCommandBuilder(dAdapter); 

//create a DataTable to hold the query results 
DataTable dTable = new DataTable(); 

//fill the DataTable 
dAdapter.Fill(dTable); 

에서 데이터를 꺼내 Ado.net 데이터 집합을 사용할 수 있습니다 그런 다음 당신은 내가이 방법 때문에 사용 방법을 권장하지 않더라도 (쿼리를 수행하는 객체에 LINQ를 사용할 수 있습니다 성능의

var results = from myRow in dTable.AsEnumerable() 
where myRow.Field<int>("RowNo") == 1 
select myRow; 
1

These 사람이 Linq2Access 프로젝트를 개발했다) 매우 잘되지 않습니다. 나는 그것을 사용한 적이 없으며 품질이나 성숙에 대해 전혀 몰랐지만 아마도 체크 아웃할만한 가치가있을 것입니다.