2

我正在尝试添加ASPxGridView到页面并以ObjectDataSource编程方式将其绑定。

这是我的代码:

protected void Page_Init(object sender, EventArgs e)
    {
        ObjectDataSource odsGroup = new ObjectDataSource();
        var gridLookup = new ASPxGridView();

        odsGroup.ID = "odsGroups";
        odsGroup.SelectMethod = "GetAllElements";
        odsGroup.TypeName = "Ifa.BusinessLayer.BLLClasses.GroupBll";
        odsGroup.OldValuesParameterFormatString = "original_{0}";

        gridLookup.ViewStateMode = ViewStateMode.Disabled;


        gridLookup.ID = "groupsLookup";
        gridLookup.AutoGenerateColumns = true;
        gridLookup.DataSource = odsGroup;
        gridLookup.KeyFieldName = "Id";
        gridLookup.DataBind();
        pnl1.Controls.Add(gridLookup);
    }

GridView当我使用而不是时,此代码工作正常ASPxGridView,但正如我所说,它不适用于ASPxGridView并抛出System.Runtime.Serialization.SerializationException

例外: 在此处输入图像描述

任何解决方案?

4

2 回答 2

2

此问题可能与 IIS 的安全设置和相应的权限有关。ASPxGridView 在必要时从其缓存中反序列化数据行。通过将ASPxGridView.EnableRowsCache属性设置为“ False ”来禁用 ASPxGridView 的缓存。

于 2012-07-03T16:04:09.977 回答
0

另一种解决方案:

  gridLookup.Columns.Add(new GridViewDataColumn("Name"));
  gridLookup.AutoGenerateColumns = false;
于 2012-07-03T20:26:11.450 回答