I have just started learning Coded UI + C# for my testing. 
I am trying with "DataTable" .
I have stuck at my framework designing for reading test data from XLS. In Java we use ODBC Driver, and it works fine. 
I don't want to use CodedUI default DataSourceAttribute as it does not fit in with our framework.
Here is my XLS file. It has only one sheet - "
Sheet1". On this sheet, I put 50 test cases. 
For each test case, 2 rows; 1. Column headers. 2. Test Data/Values.
The Column Headers change for each test case, and this is the problem for me. 
Have been struggling with this for the past 2 days. Any help is great!
| TestCaseName |  | 
| TCOne | Age | 
| TCOne | 19 | 
| TCTwo | BankName | 
| TCTwo | ABC Bank | 
  I want to get the Test Data/Values based on the Column Headers.
 My code ( I don't know how to proceed) :
--------------------------- Code ------------------------------------------------------------
 public void readData(){
string filterFilePath = "D:\\songs\\b.xls";
 string connectionString = string.Format("Provider = Microsoft.ACE.OLEDB.12.0;Data Source ={0};Extended Properties = Excel 12.0;", filterFilePath);
 OleDbConnection con = new OleDbConnection(connectionString);
 OleDbCommand cmd = new OleDbCommand();
 con.Open();
 cmd.Connection = con;
 //cmd.CommandText = String.Format("select * from [Sheet1$] where 'ID =>5' ");
 // cmd.CommandText = String.Format("select * from [Sheet1$] where 'TestCase =>One' ");
 cmd.CommandText = String.Format("select * from [Sheet1$] where 'TestCase =Two' ");
 cmd.ExecuteNonQuery();
 OleDbDataAdapter dataAdapter = new OleDbDataAdapter();
 dataAdapter.SelectCommand = cmd;
 DataSet ds= new DataSet();
 dataAdapter.Fill(ds);
 DataTable dt = new DataTable();
 dt= ds.Tables[0]; 
 //string s = "TestCase";
 //DataRow foundRow = ds.Tables[0].Rows.Find(s);
 DataRow[] foundRows;
 foundRows = ds.Tables[0].Select("TestCase Like 'One%'");
 string x = dt.Rows[0].ItemArray[0].ToString();
}
---------------------- End of code -----------------------------
Thanks in advance