MS Access データベースからデータを取り込むグリッドビューがあります。グリッドビューで「選択」を有効にし、削除ボタンを作成しました。グリッドビューで行を選択し、削除ボタンが押されたときにグリッドビューとデータベースからデータを削除したいと思います。以下は私の試みたコードですが、うまくいきません。
「myDataSet.Tables["Users"].Rows[i].Delete();」というコード行の「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが表示されます。
Webservice メソッド: // データベースを変更します
[WebMethod]
public string DatabaseUserModify(DataSet myDataset)
{
string database = "Provider=Microsoft.ACE.OLEDB.12.0;DataSource=|DataDirectory|/studentdb.accdb;Persist Security Info=True";
OleDbConnection myConn = new OleDbConnection(database);
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter("Select * from Users",
myConn);
OleDbCommandBuilder builder = new OleDbCommandBuilder(myDataAdapter);
builder.QuotePrefix = "[";
builder.QuoteSuffix = "]";
myConn.Open();
myDataAdapter.Update(myDataset, "Forum");
myConn.Close();
return "done";
}
Webサイト:
protected void DeleteButton(object sender, EventArgs e)
{
Service myService = new Service();
myDataSet = myService.AdminGetUserTable();
int i = GridView1.SelectedIndex;
myDataSet.Tables["Users"].Rows[i].Delete();//This is where I am getting error
GridView1.DataSource = myDataSet;
GridView1.DataBind();
myService.DatabaseUserModify(myDataSet);
}