我試圖實現與UpdatePanel內尋呼一個GridView。當我做第一次點擊時,一切都很好。分頁開始並快速加載下一組數據。但是,當我嘗試點擊另一頁數據鏈接時,出現以下錯誤:ASP.Net GridView控件的UpdatePanel尋呼提供錯誤在第二次點擊
Sys.WebForms.PageRequestManagerServerErrorException:處理服務器上的請求時發生未知錯誤。從服務器返回的狀態代碼爲:12030
ASPX代碼
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<contenttemplate>
<asp:GridView ID="GridView1" runat="server" CellPadding="2"
AllowPaging="true" AllowSorting="true" PageSize="20"
OnPageIndexChanging="GridView1_PageIndexChanging"
OnSorting="GridView1_PageSorting"
AutoGenerateColumns="False">
<Columns>
<asp:BoundField DataField="ActivityLogID" HeaderText="Activity Log ID" SortExpression="ActivityLogID" />
<asp:BoundField DataField="ActivityDate" HeaderText="Activity Date" SortExpression="ActivityDate" />
<asp:BoundField DataField="ntUserID" HeaderText="NTUserID" SortExpression="ntUserID" />
<asp:BoundField DataField="ActivityStatus" HeaderText="Activity Status" SortExpression="ActivityStatus" />
</Columns>
</asp:GridView>
</contenttemplate>
</asp:UpdatePanel>
代碼背後
private void bindGridView(string sortExp, string sortDir)
{
SqlCommand mySqlCommand = new SqlCommand(sSQL, mySQLconnection);
SqlDataAdapter mySqlAdapter = new SqlDataAdapter(mySqlCommand);
mySqlAdapter.Fill(dtDataTable);
DataView myDataView = new DataView();
myDataView = dt.DefaultView;
if (sortExp != string.Empty)
{
myDataView.Sort = string.Format("{0} {1}", sortExp, sortDir);
}
GridView1.DataSource = myDataView;
GridView1.DataBind();
if (mySQLconnection.State == ConnectionState.Open)
{
mySQLconnection.Close();
}
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
bindGridView();
}
protected void GridView1_PageSorting(object sender, GridViewSortEventArgs e)
{
bindGridView(e.SortExpression, sortOrder);
}
是什麼原因造成第二次點擊錯誤的任何線索?
的sSQL值和連接對象被定義和bindGridView函數內構建的。我剛剛離開了發佈的代碼......我確實移動了bindGridView函數內的數據表的聲明,但這似乎沒有幫助。 我也剝奪了一切頁面除了更新面板和GridView,但它似乎仍有問題完全渲染或完成傳呼電話 – joe 2010-03-26 17:03:54
你做的ViewState的任何舉動?例如將它移動到頁面的底部?一般來說,如果你改變了任何模塊,視圖狀態並沒有改善,那麼updatePanel不會第二次得到它 - 如果是的話告訴我,以告訴一些技巧 – Aristos 2010-03-26 20:06:37