C# 使用OLEDB更新excel电子表格
我有一个web应用程序,其中数据库是MS Excel(只是为了保留很少的值,所以我们更喜欢Excel而不是SQL) 我写了一个保存和删除的常用函数,基于操作系统将执行该操作。两者都很好 问题是,我的cmd.ExecuteNonQuery()方法在执行时不返回任何异常(我在下次加载工作表时进行了验证,在excel中得到了更新的值)。但我无法打开excel工作表,因为工作进程已附加到该工作表上。因此,我显式终止该进程(w3wp.exe)。现在我通过应用程序所做的所有更改都不存在了C# 使用OLEDB更新excel电子表格,c#,excel,oledb,C#,Excel,Oledb,我有一个web应用程序,其中数据库是MS Excel(只是为了保留很少的值,所以我们更喜欢Excel而不是SQL) 我写了一个保存和删除的常用函数,基于操作系统将执行该操作。两者都很好 问题是,我的cmd.ExecuteNonQuery()方法在执行时不返回任何异常(我在下次加载工作表时进行了验证,在excel中得到了更新的值)。但我无法打开excel工作表,因为工作进程已附加到该工作表上。因此,我显式终止该进程(w3wp.exe)。现在我通过应用程序所做的所有更改都不存在了 如何解决这个。。。
如何解决这个。。。?任何想法在没有看到代码示例的情况下,很难询问您的问题。我要检查的第一件事是您是否正在关闭数据库连接。大致如下:
using (OleDbConnection conn = new OleDbConnection("connection string"))
{
using (OleDbCommand cmd = conn.CreateCommand())
{
// do stuff
cmd.ExecuteNotQuery();
}
}
using
语句将在命令和连接超出范围后关闭并处理它们。
如果这没有帮助,我们需要更多的信息