我需要制作一个可以在数据库中保存分数的应用程序。数据库的结构是NICK(string
),它是主键和PTS(int
)。如果玩家有NICK,已经存在于数据库中;他在上一场比赛中得到的分数应该加到与NICK相对应的PTS上。我无法编辑DataSet
然后更新数据库。
我尝试将其设为MSDN节目,但我没有FindBy(...)
方法。我花了两天的时间搜索答案而无法得到答案。
这是我写的代码:
private void dodajigrajbutton_Click(object sender, EventArgs e)
{
nick = nicktextBox.Text;
DataRow[] daneGracza = this.tFSDataSet.JIPP.Select("NICK = '" + nick + "'");
DataTable table = new DataTable();
table.Columns.Add("NICK", typeof(string));
table.Columns.Add("PTS", typeof(int));
try
{
int temp;
tFSDataSet.AcceptChanges();
if (!daneGracza[0].IsNull("NICK")) { }
temp = (int)daneGracza[0].ItemArray[1];
table.Rows.Add(nick, temp+points); // there are good values here
// here should be code editing row in data set, but i had unheld
//exceptions when trying to do it like
//daneGracza[0].ItemArray[1] = table.Rows[0];
this.jIPPTableAdapter.Update(tFSDataSet);
}
catch (IndexOutOfRangeException ex)
{
this.jIPPTableAdapter.Insert(nick, points);
}
points = 0;
this.jIPPTableAdapter.Fill(this.tFSDataSet.JIPP);
}
答案 0 :(得分:0)
不确定问题是什么,但我可以回答为什么你没有FindByXXX()方法。当您创建类型化数据集时,它们由visual studio生成。您可以找到更多信息here: