必须在使用DataView Exception之前设置DataTable

时间:2013-11-13 12:56:11

标签: c# asp.net visual-studio-2012

我目前正在网站上工作,我遇到了一个小问题。在调试我的代码时,当我尝试访问用户的配置文件时会抛出异常('DataTable必须在使用DataView Exception之前设置。')。我已在本网站和其他论坛上查看过,但我不确定如何继续这种情况。

以下是有问题的代码:

private void FillGrid()
{
    DataSet ds = new DataSet();
    //get data from session
    ds = (DataSet)SessionNavigator.GetDataFromCurrentPage(PageParams.Customer.DataCards);
    if (ds != null)
    {
        DataView dv = new DataView(ds.Tables["Cards"], "", "", DataViewRowState.CurrentRows);
        gridCtrl.RowsCount = dv.Count;
        gridCtrl.BindGrid(dv);
    }
}

任何建议/解决方案都将不胜感激!

1 个答案:

答案 0 :(得分:0)

根据我的研究,你应该能够扭转这两行代码:

gridCtrl.BindGrid(dv);
gridCtrl.RowsCount = dv.Count;

在可以利用DataView之前绑定网格。

但正如我在评论中所述,这一行:

DataView dv = new DataView(ds.Tables["Cards"], "", "",
    DataViewRowState.CurrentRows);

应该只能是:

DataView dv = ds.Tables["Cards"].DefaultView;