0

我有一个测试 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 周围)似乎正在做我正在尝试的事情,但显然我错过了一些东西!

提前致谢!

4

1 回答 1

0

这是因为我是个白痴,并且在预渲染部分分配了数据源

于 2013-10-23T00:50:52.720 回答