C# 在asp.net C中,更新面板内的链接按钮的响应太晚#

C# 在asp.net C中,更新面板内的链接按钮的响应太晚#,c#,jquery,asp.net,updatepanel,repeater,C#,Jquery,Asp.net,Updatepanel,Repeater,当我点击Flag按钮时,所有要通过按钮点击执行的操作都工作得很好,但要在屏幕上显示效果几乎需要7-8秒 我的Asp.net代码: <asp:ScriptManager runat="server" EnablePartialRendering="true" ID="SC1"></asp:ScriptManager> <!-- Get Mile--> <div class="row"> <div

当我点击Flag按钮时,所有要通过按钮点击执行的操作都工作得很好,但要在屏幕上显示效果几乎需要7-8秒

我的Asp.net代码:

<asp:ScriptManager runat="server" EnablePartialRendering="true" ID="SC1"></asp:ScriptManager>
    <!-- Get Mile-->
        <div class="row">
            <div class="col-md-2"></div>
            <div class="col-md-7">
                <%--  <asp:UpdatePanel runat="server" ID="UpdatePanel1">
                    <ContentTemplate>--%>
                <ul class="timeline-list">

                    <asp:Repeater runat="server"  ID="repeater_post" OnItemDataBound="repeater_post_ItemDataBound" OnItemCreated="repeater_post_ItemCreated">
                        <ItemTemplate>
                            <li class="media media-clearfix-xs">
                <div class="media-body">
                                    <div class="media-body-wrapper">
                                        <div class="panel panel-default ">
                                            <asp:Image runat="server" ID="img_PostPic" ImageUrl='<%# GetImagePath(Eval("ImagePath").ToString()) %>' CssClass="img-responsive" Style="height: 200px !important; width: 526px !important" />
                                            <%--<asp:Image runat="server" ID="Image1" ImageUrl='<%# GetMood(Eval("Mood").ToString()) %>' class="pull-right" />--%>
                        <div class="view-all-comments">
                                                <asp:UpdatePanel runat="server" ID="upd5" UpdateMode="Always">
                                                    <ContentTemplate>
                                                        <asp:LinkButton runat="server" CommandArgument='<%# Eval("PostID").ToString() %>' ID="lbtn_Flag" CssClass="btn btn-white" ToolTip='<%# GetAllFlagMember(Convert.ToString(Eval("PostID"))) %>' OnClick="lbtn_Flag_Click" Visible='<%# CheckFlag(Eval("PostID"))%>'>
                                                            <i class="fa fa-flag"></i>&nbsp;
                                                        </asp:LinkButton>
                                                        <asp:LinkButton runat="server" CommandArgument='<%# Eval("PostID") %>' ID="lbtn_Unflag" CssClass="btn btn-white" ToolTip='<%# GetAllFlagMember(Convert.ToString(Eval("PostID"))) %>' OnClick="lbtn_Unflag_Click" Visible='<%# CheckUnFlag(Eval("PostID"))%>'>
                                                            <i class="fa fa-flag"></i>&nbsp;Unflag
                                                        </asp:LinkButton>
                                                        <strong>&nbsp;&nbsp;<%# GetFlagCount(Eval("PostID").ToString())%> &nbsp;Flag</strong>
                                                    </ContentTemplate>
                                                    <Triggers>
                                                        <asp:AsyncPostBackTrigger ControlID="lbtn_Flag" EventName="Click" />
                                                        <asp:AsyncPostBackTrigger ControlID="lbtn_Unflag" EventName="Click" />
                                                    </Triggers>
                                                </asp:UpdatePanel>
                                                <%--<asp:LinkButton runat="server" ID="lbtnflagmember" CommandArgument='<%# Eval("PostID")%>' Text='<%# GetFlagCount(Eval("PostID").ToString())%>'></asp:LinkButton>--%>
                        <!-- Go to www.addthis.com/dashboard to customize your tools -->
                                                <div class="addthis_sharing_toolbox" style="float: right"></div>
                                                <asp:LinkButton runat="server" CommandArgument='<%# Eval("Lat")+"$"+Eval("Long")+"$"+Eval("PostAutorID")+"$"+Eval("Destination") %>' ID="lbtn_MapCanvas" ToolTip="Map" OnClick="lbtn_MapCanvas_Click" CssClass="pull-right" CausesValidation="false"> <i class="fa fa-map-marker"></i>&nbsp;Navigate
                                                </asp:LinkButton>
                                                <asp:LinkButton runat="server" CommandArgument='<%# Eval("PostID")+"$"+Eval("Destination") %>' ID="lbtn_ReportAbuse" ToolTip="Report Abuse" OnClick="lbtn_ReportAbuse_Click" CssClass="pull-right"> <i class="fa fa-share-square-o "></i>&nbsp;Report Abuse
                                                </asp:LinkButton>

                                            </div>
                                        </div>
                                    </div>
                                </div>
                            </li>
                        </ItemTemplate>
                    </asp:Repeater>

                </ul>

  • --%> 解渣 标志 --%> 导航 举报虐待
我在链接按钮上的C#后端代码是:

   protected void lbtn_Flag_Click(object sender, EventArgs e)
    {
        //lbtn_Flag.Enabled = false;
        //lbtn_Unflag.Enabled = true;
        LinkButton btn = (LinkButton)sender;
        int _PostId = Convert.ToInt32(btn.CommandArgument);
        WStblFlag wsFlag = new WStblFlag();
        string res = wsFlag.AddFlag(_PostId, Functions.ParseInteger(Convert.ToString(Session["ProfileID"])));
        GetPost();

        //UpdatePanel up = repeater_post.FindControl("upd5") as UpdatePanel;
        //up.Update();

        //UpdatePanel inner_rpt = (UpdatePanel)repeater_post.Items.FindControl("repeater_Comment");

    }
    /// <summary>
    /// UnFlag the post
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void lbtn_Unflag_Click(object sender, EventArgs e)
    {

        //lbtn_Flag.Enabled = true;
        //lbtn_Unflag.Enabled = false;
        LinkButton btn = (LinkButton)sender;
        int _PostId = Convert.ToInt32(btn.CommandArgument);
        WStblFlag wsFlag = new WStblFlag();
        string res = wsFlag.UnFlagPost(_PostId, Functions.ParseInteger(Convert.ToString(Session["ProfileID"])));
        GetPost();
    }
受保护的无效lbtn\u标志\u单击(对象发送方,事件参数e)
{
//lbtn_Flag.Enabled=false;
//lbtn_Unflag.Enabled=真;
LinkButton btn=(LinkButton)发送方;
int _PostId=Convert.ToInt32(btn.CommandArgument);
wstblsflag wsFlag=新的wstblsflag();
string res=wsFlag.AddFlag(_PostId,Functions.ParseInteger(Convert.ToString(Session[“ProfileID]”));
GetPost();
//UpdatePanel up=repeater_post.FindControl(“upd5”)作为UpdatePanel;
//up.Update();
//UpdatePanel inner_rpt=(UpdatePanel)repeater_post.Items.FindControl(“repeater_Comment”);
}
/// 
///解开发条
/// 
/// 
/// 
受保护的无效lbtn\u取消延迟\u单击(对象发送方,事件参数e)
{
//lbtn_Flag.Enabled=true;
//lbtn_Unflag.Enabled=false;
LinkButton btn=(LinkButton)发送方;
int _PostId=Convert.ToInt32(btn.CommandArgument);
wstblsflag wsFlag=新的wstblsflag();
string res=wsFlag.UnFlagPost(_PostId,Functions.ParseInteger(Convert.ToString(Session[“ProfileID]”));
GetPost();
}
我已经尝试了很多方法来缩短响应时间,但都不会成功。。。

这是7到8秒还是78秒?实际上需要20到23秒。我建议您对其进行分析-如果您没有/找到分析工具,请尝试逐行注释(从最深的嵌套代码开始,向外注释),直到找到最耗时的代码。谢谢@belwood当我将其上载到服务器时,它实际上工作正常