我有一个测试 DX 枢轴网格,我正在尝试针对它附加一个简单的 SQL 语句(我知道的相当老套的例子,但我在这里只是“概念证明”)
@Html.DevExpress().PivotGrid(settings =>
{
settings.Name = "pivotGrid";
settings.CallbackRouteValues = new { Controller = "Home", Action = "PivotGridPartial" };
settings.OptionsView.ShowHorizontalScrollBar = true;
settings.Height = new Unit(887, UnitType.Pixel);
settings.Width = new Unit(100, UnitType.Percentage);
settings.OptionsCustomization.CustomizationFormStyle = CustomizationFormStyle.Excel2007;
var dataTable = new DataTable();
using (var con = new SqlConnection(@"Data Source=.\WHATEVER;Initial Catalog=WhatEver;integrated security=true;"))
{
con.Open();
var adapter = new SqlDataAdapter("select * from dbo.WhatEver", con);
adapter.Fill(dataTable);
}
settings.PreRender = (sender, e) =>
{
var pivot = ((MVCxPivotGrid)sender);
pivot.DataSource = dataTable;
pivot.RetrieveFields(PivotArea.FilterArea, false);
pivot.BeginUpdate();
pivot.Fields["Client"].Area = PivotArea.RowArea;
pivot.Fields["Client"].Visible = true;
pivot.Fields["Brand"].Area = PivotArea.RowArea;
pivot.Fields["Brand"].Visible = true;
pivot.Fields["Volume"].Area = PivotArea.DataArea;
pivot.Fields["Volume"].Visible = true;
pivot.EndUpdate();
};
}).GetHtml()
这在加载时工作得很好,但是如果我尝试扩展一个维度或更改到另一个页面,网格会被空白,即就像它没有分配数据一样。
有人知道为什么吗?我找不到与不假设使用 OLAP 多维数据集的枢轴网格和 DX 相关的任何内容,而我发现的示例(在 Access 周围)似乎正在做我正在尝试的事情,但显然我错过了一些东西!
提前致谢!