如何使用 C# 代码从多维数据集获取度量值
How to get measure value from cube using c# code
我正在用 c# 编写代码,我想从多维数据集中检索度量值和日期。我写了下面的代码。
public class cubeData
{
public void getData()
{
AdomdConnection con = new AdomdConnection("Data Source = <serverName>; Initial Catalog = <dbName>");
con.Open();
string command = @"Select [Measure].[Foo] on ROWS, [Date].AllMembers on Columns From SalesCube";
AdomdCommand cmd = new AdomdCommand(con, command);
AdomdDataReader dr = cmd.ExecuteReader();
While(dr.Read())
{
Console.WriteLine(Convert.ToString(dr[0]);
}
dr.Close();
con.Close();
}
}
此代码returns只有日期不对应日期的度量值。
任何建议都会很有帮助。
提前致谢
尝试使用 Console.WriteLine(Convert.ToString(dr[3])
获取度量值。我不确定您使用的是 Tabular/Multidimensional 多维数据集还是您所处的兼容级别,但我可以使用 MDX 命令从兼容级别 1200 的表格多维数据集访问度量数据 returns 等效结果集。
我已经有一段时间没有这样做了,但您可能需要展平返回结果集中的数据。数据可能会分布在您可能需要迭代的不同轴上。
我正在用 c# 编写代码,我想从多维数据集中检索度量值和日期。我写了下面的代码。
public class cubeData
{
public void getData()
{
AdomdConnection con = new AdomdConnection("Data Source = <serverName>; Initial Catalog = <dbName>");
con.Open();
string command = @"Select [Measure].[Foo] on ROWS, [Date].AllMembers on Columns From SalesCube";
AdomdCommand cmd = new AdomdCommand(con, command);
AdomdDataReader dr = cmd.ExecuteReader();
While(dr.Read())
{
Console.WriteLine(Convert.ToString(dr[0]);
}
dr.Close();
con.Close();
}
}
此代码returns只有日期不对应日期的度量值。 任何建议都会很有帮助。
提前致谢
尝试使用 Console.WriteLine(Convert.ToString(dr[3])
获取度量值。我不确定您使用的是 Tabular/Multidimensional 多维数据集还是您所处的兼容级别,但我可以使用 MDX 命令从兼容级别 1200 的表格多维数据集访问度量数据 returns 等效结果集。
我已经有一段时间没有这样做了,但您可能需要展平返回结果集中的数据。数据可能会分布在您可能需要迭代的不同轴上。