Forum > ASP.NET 3.x > Språk - C#
Hej igen!
Jag ska denna gång kolla om en användare har svarat på enkäten jag bygger men det står still i huvudet. Min funktion jag hittills skapat ser ut enligt följande:
protected void loadAnswers()
{
//UserSession är en klass jag själv byggt
UserSession us = (UserSession)Session["user"];
//Databas är också en egen klass
Databas db = new Databas(Server.MapPath("app_data/databas.accdb"));
//us.GetCurrentId är primärnyckeln i tabellen för anv, en int i detta fall.
db.ExecuteQuery("SELECT * FROM tblAnvSvar WHERE anvNr =" + us.GetCurrentId());
DataTable dt = new DataTable();
dt.Columns.Add("anvNr", typeof(int));
dt.Columns.Add("svarsID", typeof(int));
dt.Columns.Add("fragaID", typeof(int));
dt.Columns.Add("svarVarde", typeof(int));
while (db.Reader.Read())
{
dt.Rows.Add(db.Reader.GetValue(0), db.Reader.GetValue(1), db.Reader.GetValue(2), db.Reader.GetValue(3));
}
if (dt.Rows[0][0] != null)
{
foreach (RepeaterItem item in postQuestions.Items)
{
RadioButtonList radioButtons = new RadioButtonList();
radioButtons = (RadioButtonList)item.FindControl("radioList");
Label lblFragaID = new Label();
Label fragaID = (Label)item.FindControl("lblFragaID");
}
}
db.Close();
}
Antar att jag ska göra någon form av foreach som kollar om det finns nogit i svarsVarde i sammanhang med anvNr och fragaID, men jag vet inte hur jag går vidare. :S
Vore kanon med någon kommetar/föreslag om hur jag kan sparka igång mig själv :)
Edit: Denna tråd är en "fortsättning" på problematiken i denna tråd: http://www.aspkoll.se/traad/20948-h...template/#20968
Vad ska du göra om användaren har svarat på enkäten? Räcker nog med att du kollar upp svarsVarde i OnItemDataBound eller va de nu heter.
Tanken är att jag ska checka för den aktuella readiobutton, där värdet på denne stämmer överens med det användaren svarat :)
Jag använder mig av paging, så när man trycker på "tillbaka"-knappen ska enkäten skiva ut vad användaren tidigare svarat.