¿Qué hay de malo en este código? El botón de imagen debe hacer clic dos veces para disparar?

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

Pregunta

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);
}

El marcado está en control web, aquí está:

<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Images/_48.png"  
                 CommandArgument="en-US" OnClick="ImageButton1_Click" /> 
¿Fue útil?

Solución

No estoy seguro si es pertinente en este caso, pero, Server.Transfer lanzará ThreadAbortexception, al igual que la respuesta predeterminada. Redirect. Tus finales 2 declaraciones no se ejecutarán.

Muévalos por encima del servidor. Transferir, use un bloque Try/Catch/Finalmente, o vea si Server.Execute satisfaría sus necesidades. Regresará después de la ejecución de la página referenciada.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top