Was ist falsch in diesem Code? Die Schaltfläche Bild muss zweimal geklickt werden, um zu schießen?

StackOverflow https://stackoverflow.com/questions/4866964

Frage

protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
    HttpCookie cookie = new HttpCookie("CultureInfo");
    cookie.Value = ImageButton1.CommandArgument;
    Response.Cookies.Add(cookie);
    Server.Transfer(Request.Path);
    Thread.CurrentThread.CurrentCulture = new CultureInfo(cookie.Value);
    Thread.CurrentThread.CurrentUICulture = new CultureInfo(cookie.Value);
}

Das Markup befindet sich in der Websteuerung, hier ist es:

<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Images/_48.png"  
                 CommandArgument="en-US" OnClick="ImageButton1_Click" /> 
War es hilfreich?

Lösung

Ich bin mir nicht sicher, ob es in diesem Fall relevant ist, aber Server.transfer werfen Threadabortexception wie die Standardantwort. REDIRECT. Ihre letzten 2 Aussagen werden nicht ausgeführt.

Bewegen Sie sie entweder über den Server.transfer, verwenden Sie einen Versuch/Fang/Blockieren oder prüfen Sie, ob server.execute Ihre Anforderungen entspricht. Es wird nach der Ausführung der referenzierten Seite zurückgegeben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top