table = New DataTable()
Using dataAdapter As AdomdDataAdapter = New AdomdDataAdapter(command)
dataAdapter.Fill(table)
End Using
When you do this, the first few columns in the datatable are actually row header values. That's exactly what I want. Correspondingly I expect the first few rows to be the column header values. But they are not. Why not? Is there any easy way to get the column header values?
I think you will find that the ColumnName property of the column contains some sort of concatenation of the column headers.|||The column name is something like [abc].[def].&[ghi].[jkl].&[mno]. I guess I could parse this myself. So parsing this is the only way to get the column headers? That seems unreliable. For row headers I can easily find them in the body of the table, and I don't have to do any parsing.
|||
This is just how the flattened rowsets work. If you have ever used a linked server in SQL Server back to an SSAS server you will have seen similar result sets. The only other option would be to get a cellset (which is multi-dimensional) and flatten it yourself.
sql
没有评论:
发表评论