页面Page_Load中执行耗时操作,为防止页面长时间加载,可在VS2010中使用AJAX控件:ScriptManager,UpdatePanel,Timer,UpdateProgress实现。
<form id="form1" runat="server">
<div style="margin:0 auto;">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdateProgress ID="UpdateProgress1" runat="server">
<ProgressTemplate>
<div style="margin:0 auto;">
<img src="img/loading.gif" alt="Wait" />
</div>
</ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Image ID="Image1" runat="server" ImageUrl="~/img/logo.png" ImageAlign="Middle" /></ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick" />
</Triggers>
</asp:UpdatePanel>
</div>
<div style="height:50px">
<asp:Timer ID="Timer1" runat="server" ontick="Timer1_Tick" Interval="1000"></asp:Timer>
</div>
</form>
protected void Timer1_Tick(object sender, EventArgs e)
{
//耗时操作();
}
private void 耗时操作()
{
Timer1.Enabled = false;
}