【发布时间】:2018-12-07 15:52:43
【问题描述】:
我有一个电子表格,需要接受来自 asp.net 应用程序的数据。
我已经编写了一些 c#,允许我从另一个电子表格中读取数据,但现在我想从文本框中输入一些数据。
protected void Button2_Click(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection();
string path = Server.MapPath("LOG_TEST.xlsx");
String connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 12.0;IMEX=1;'";
conn.ConnectionString = connString;
conn.Open();
OleDbCommand cmd = new OleDbCommand("INSERT INTO [Sheet1$] ([NAME], [MOBILE], [EMAIL]) VALUES('" + TextBox2.Text + "','" + TextBox3.Text + "','" + TextBox4.Text + "')",conn);
OleDbDataReader rd = cmd.ExecuteReader();
conn.Close();
}
只需在电子表格中插入 3 个值。
我得到的错误如下。
我相信问题出在
OleDbDataReader rd = cmd.ExecuteReader();
但不确定用什么替换它。
【问题讨论】:
-
不能解决我的问题。欢呼吧。
-
使用 ExecudeNonQuery 而不是 ExecuteReader
-
还查看了电子表格中的权限,一切正常。
-
使用 ExecuteNonQuery 时仍然收到相同的错误消息