我想在DropDownList selectedindex更改事件中合并数据表。所以我在DropDownList_SelectedIndexChanged事件中编写了以下代码。
DataTable dt = (DataTable)POBLL.GetPOAdhocDetail();
DataView dv = new DataView(dt);
dv.RowFilter = "IndentTypeID = " + ddlIndentType.SelectedValue + "AND IndentID = " + ddlIndentNumber.SelectedValue;
DataTable dtView = dv.ToTable();
gvPODetails.DataSource = dtView;
gvPODetails.DataBind();
DTMerge.Merge(dtView);
其中DTMerge是DataTable,我在下面声明:
public DataTable DTMerge
{
get
{
if (ViewState["Merge"] != null)
{
return (DataTable)ViewState["Merge"];
}
else
return null;
}
set
{
ViewState["Merge"] = value;
}
}
但它会抛出错误“对象引用未设置为实例”。怎么解决这个问题?
答案 0 :(得分:2)
您请求了DTMerge属性,该属性有效需要存在相应的ViewState。在您访问DTMerge属性时,您还没有ViewState。
这很可能就是问题所在。