私のWebページはサーバー上のテーブルレコードを更新します。「count」は、クイズのスコアをカウントするint変数です。その値はWebページに正しく表示されますが、データベースに保存されたレコードは、すべてのレコードに対して値「0」を示します。
int count = 0;
protected void Button1_Click(object sender, EventArgs e)
{
count++; // for each correct answer
}
protected void submitScore_Click(object sender, EventArgs e)
{
var check = (from i in dc.QuizTakens where (i.username ==Context.User.Identity.Name && i.SubName == "Sports" && i.Lev=="Easy")select i).SingleOrDefault();
if (check == null)
{
QuizTaken q = new QuizTaken();
q.SubName = "Sports";
q.Lev = "Easy";
q.username = Context.User.Identity.Name;
q.score_max = count;
dc.QuizTakens.InsertOnSubmit(q);
dc.SubmitChanges();
}
}
このテーブルの主キーは、SubName、Lev、QIdです。レコード全体がテーブルに追加されますが、Webページにscore_maxの正しい値を表示できたとしても、score_maxの値は常に0です。