webForumDet fria alternativet

querystring funkar ej/alternativt if-sats trasig

.NET

2 svar · 413 visningar · startad av Sanji

Medlem sedan juli 2009355 inlägg
Frågan#1

Hej! Jag har två radiobuttons som skapas dynamiskt, och läggs sedan till i en tabell. Jag vill att när man väljer en av dessa två, så ska sidan redirecta till sig själv med ett par värden i querystrings. jag har gjort så här:

en.Attributes.Add("onClientClick", "window.location.href='Inquiry.aspx?inquiryID=" + Dropdownlistinquiries.SelectedValue + "&lang=1&supplierID="+s.ID+"'");
                sv.Attributes.Add("onClientClick", "window.location.href='Inquiry.aspx?inquiryID=" + Dropdownlistinquiries.SelectedValue + "&lang=0&supplierID=" + s.ID + "'");

sen har jag en if-sats i pageload som kollar om querystringen "lang" finns, och då ska den köra en stored procedure:

if (Request.QueryString["lang"] != null && Request.QueryString["lang"] != "")
            {
                SqlConnection conn = new SqlConnection("Data Source=.\\SQLExpress;Integrated Security=true; AttachDbFilename=|DataDirectory|\\databas.mdf;User Instance=true;");
                SqlCommand cmd = new SqlCommand("supplier_updatelang", conn);

                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add(new SqlParameter("@supplierID", Request.QueryString["supplierID"]));
                cmd.Parameters.Add(new SqlParameter("@lang", Convert.ToInt32(Request.QueryString["lang"])));
                conn.Open();
                cmd.ExecuteNonQuery();
                conn.Close();

            }

Det är något som gör att denna kod inte körs, vilket måste betyda att antingen är det fel på if-satsen eller eventet onClientClick som lagts till.

Request.Querystring["inquiryID"] hittar jag, om jag slänger in en breakpoint på if-satsen och håller över querystringen så står det inquiryID och sedan ett GUID, fastän jag letar efter Request.Querystring["lang"].

är det bättre att använda sig av checkboxar istället för radiobuttons kanske?

//Mvh Sanji

Medlem sedan juli 2009355 inlägg
#2

supplierID och lang får värden när radioknapparna skapas, jag satte in en breakpoint där och kollade. querystringarna går ändå inte att hitta.

RadioButton sv = new RadioButton();
                RadioButton en = new RadioButton();
                sv.GroupName = s.ID;
                sv.Text = "SV";
                sv.AutoPostBack = true;
                en.AutoPostBack = true;
                en.Text = "EN";
                en.GroupName = s.ID;
                
                en.Attributes.Add("onClientClick", "window.location.href='Inquiry.aspx?inquiryID=" + Dropdownlistinquiries.SelectedValue + "&lang=1&supplierID="+s.ID+"'");
                sv.Attributes.Add("onClientClick", "window.location.href='Inquiry.aspx?inquiryID=" + Dropdownlistinquiries.SelectedValue + "&lang=0&supplierID=" + s.ID + "'");

där var hela koden för radioknapparna.

jag ska testa att lägga till tostring() till s.ID, kan vara det som spökar

EDIT* det hjälpte inte, den hittar fortfarande inte alla querystrings.

Medlem sedan juli 2009355 inlägg
#3

felet är borta, jag tror det var någon apostrof som var felet, men jag är inte 100% säker...

282 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
153 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)