回页时ASP.NET页面为空白,需要多页刷新

时间:2012-10-15 19:31:46

标签: c# asp.net postback

由于某些奇怪的原因,当我发回帖子时(通过单击按钮),页面执行回发但结果页面完全空白。如果我尝试查看页面源,我会收到确认表单重新提交消息(使用chrome)。

但是,如果我按f5几次,最终会加载正确的页面。

我注意到,当按钮按下导致某种类型的数据库访问时,通常会发生这种情况。为什么会发生这种情况,我该如何避免呢?

编辑:我注意到当我添加以下代码时,这种情况开始发生的频率更高,但它总是在以前的代码中不时发生:

protected void BindPartList()
{
    if (UnitsDropDown.Text == "Imperial")
    {
        if (PartListGridView.Columns.Count > 4)
            PartListGridView.Columns.Remove(PartListGridView.Columns[4]);
        BoundField colIndex4 = new BoundField();
        colIndex4.DataField = "IMPUNITS";
        colIndex4.HeaderText = "Unit";
        colIndex4.SortExpression = "IMPUNITS";
        PartListGridView.Columns.Add(colIndex4);
        PartListGridView.DataSourceID = "ImpPartInfoObjectSource";
    }
    else
    {
        if (PartListGridView.Columns.Count > 4)
            PartListGridView.Columns.Remove(PartListGridView.Columns[4]);
        BoundField colIndex4 = new BoundField();
        colIndex4.DataField = "DWGUNIT";
        colIndex4.HeaderText = "Unit";
        colIndex4.SortExpression = "DWGUNIT";
        PartListGridView.Columns.Add(colIndex4);
        PartListGridView.DataSourceID = "MetricPartInfoObjectSource";
    }
    PartListGridView.DataBind();
}

前端看起来像:

<asp:GridView ID="PartListGridView" runat="server" ShowHeaderWhenEmpty="True" AutoGenerateColumns="False"
    Width="100%" Font-Size="11pt" DataKeyNames="PARTNUM" AllowSorting="true">
    <Columns>
        <asp:BoundField DataField="PARTNUM" HeaderText="PARTNUM" SortExpression="PARTNUM"
            ReadOnly="True" />
        <asp:BoundField DataField="PARTDESC" HeaderText="PARTDESC" SortExpression="PARTDESC" />
        <asp:BoundField DataField="CATEGORY" HeaderText="CATEGORY" SortExpression="CATEGORY" />
        <asp:BoundField DataField="COLOUR" HeaderText="COLOUR" SortExpression="COLOUR" />
    </Columns>
</asp:GridView>

除了两个数据源,当然还有

谢谢,

0 个答案:

没有答案