sembra tutto corretto.
L'unica cosa: che cosa è IDOfferta.value????????
codice:
Response.Redirect("~/WebPages/ElencoOfferte.aspx?id=" + IDOfferta.Value);
al massimo
codice:
Response.Redirect("~/WebPages/ElencoOfferte.aspx?id=" + IDOfferta.ToString());
o meglio
codice:
Response.Redirect("~/WebPages/ElencoOfferte.aspx?id=" + Server.UrlEncode(IDOfferta.ToString()));
e nell'altra pagina
codice:
if (Request.QueryString["id"] != null)
idElem = Server.UrlDecode(Request.QueryString["id"].ToString());
e controlla che dopo il redirect sulla barra di navigazione l'indirizzo sia corretto e completo