私はデータベースを作ろうとしています。フォームを作ったので、そこからデータを取得したいと思います。すべては大丈夫だと思われますが、私のデータベースは更新されず、変更されませんでした。私はローカルデータベースを使用しています。私は "出力ディレクトリにコピー"を変更しようとしましたが、何も起こっていません... SubmitChangesはOKのようです:メッセージが表示されますが、プログラムが終了した後にデータベースに新しいデータが含まれていません...同様の問題を抱えていましたが、解決策が見つかりませんでした。C#SubmitChangesは仕事しません
マイコード:
private void felvetButton_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
if (f2.ShowDialog() == DialogResult.OK)
{
Match m = new Match();
try
{
m.datum = f2.datumTextBox.Text;
m.mod_fk = Convert.ToInt32(f2.modTextBox.Text);
m.acc_fk = Convert.ToInt32(f2.accTextBox.Text);
m.champion = f2.champTextBox.Text;
m.szerep_fk = Convert.ToInt32(f2.roleTextBox.Text);
m.kimenet = f2.resultTextBox.Text;
m.mhossz = f2.lengthTextBox.Text;
m.kill = Convert.ToInt32(f2.killTextBox.Text);
m.death = Convert.ToInt32(f2.deathTextBox.Text);
m.assist = Convert.ToInt32(f2.assistTextBox.Text);
m.kda = float.Parse(f2.kdaTextBox.Text);
m.killpart = float.Parse(f2.kpTextBox.Text);
m.farm = Convert.ToInt32(f2.farmTextBox.Text);
m.ward = Convert.ToInt32(f2.wardTextBox.Text);
m.redward = Convert.ToInt32(f2.redwTextBox.Text);
db.SubmitChanges();
MessageBox.Show("New match added to the database!");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
あなたは送信したい変更をdbに伝えませんでした。関連する限り、あなたの 'match'オブジェクトとは何の関係もありません - ' f2'オブジェクトと同じです。 – Amy
とにかく 'db'とは何ですか?しかしAmyのように、あなたはそれに 'm'を関連付ける必要があります。 – DavidG
また、ネストされたtry/catchブロックは必要ありません。外部ブロックは、SubmitChanges()呼び出しによってスローされた例外をすべて捕捉します。 – squillman