Cosa c'è che non va in questo codice? Il pulsante dell'immagine deve essere fatto clic due volte per sparare?
-
28-10-2019 - |
Domanda
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);
}
Il markup è in controllo web, eccolo:
<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Images/_48.png"
CommandArgument="en-US" OnClick="ImageButton1_Click" />
Soluzione
Non sono sicuro che in questo caso sia pertinente ma Server.Transfer lancerà threadAbortException, proprio come la risposta predefinita.redirect. Le tue 2 dichiarazioni finali non verranno eseguite.
O spostali sopra il server. Trasferisci, usa un try/catch/infine blocca o vedi se server.execute soddisferebbe le tue esigenze. Ritornerà dopo l'esecuzione della pagina di riferimento.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow