2015-02-01 14 views
0

안녕하세요! DB없이 런타임에 형식화 된 데이터 집합이나 데이터 테이블을 만들려고합니다.C# : 런타임시 입력 된 데이터 세트 또는 다른 구조를 만드는 방법은 무엇입니까?

Excel 파일이 있으며이를 구문 분석하고 형식화 된 데이터 집합을 만들고 싶습니다.

foreach(Person personRow in dataSetPerson.Rows) 
{ 
    var name=personRow.name;//etc 
} 

하지만 난 할 수 없습니다 : 내가 그런 일을 할 수있는 소위 경우, 때문에. 나는 this question에서 해보려고했지만 실패했습니다.

런타임시 형식이 지정된 구조 (데이터 집합 또는 다른 집합 일 수 있음)를 만드는 방법을 알려주십시오. 감사합니다!

답변

1

jet oledb를 사용할 수 있습니다. Microsoft.Jet.OLEDB.4.0

https://www.connectionstrings.com/microsoft-jet-ole-db-4-0/

제공자 =; 데이터 소스 = C : \의 MyExcel.xls; 확장 속성 = "Excel 8.0; HDR = 예; IMEX = 1";

그리고 나서 excell 파일에 대한 쿼리를 작성하십시오.

string query = "SELECT [aa],[bb],[cc] FROM [Sheet1$]"; 
OleDbConnection conn = new OleDbConnection(myConnectionStringsRef); 
conn.Open(); 
OleDbCommand cmd = new OleDbCommand(query, conn); 
OleDbDataAdapter da = new OleDbDataAdapter(cmd); 
DataSet ds = new DataSet(); 
da.Fill(ds); 

      var XXX = ds.Tables[0]; 

da.Dispose(); 
conn.Close(); 
conn.Dispose();