我正在尝试使用SQL服务器中的一些数据填充excel文件,
我的代码如下,
public static void SQLToExcel(Excel.Workbook xlWorkBook, string SQL, string tFORMAT)
{
string connectionString = ConfigurationManager.ConnectionStrings["ANSICConnection"].ConnectionString;
SqlConnection conn;
conn = new SqlConnection(connectionString);
conn.Open();
using (SqlCommand cmd = new SqlCommand(SQL, conn))
{
SqlDataReader reader = cmd.ExecuteReader();
if (reader.HasRows)
{
reader.Read();
((Range)xlWorkBook.Sheets["COVER"].Range("D6")).CopyFromRecordset(reader);
}
reader.Close();
}
conn.Close();
}
我收到以下错误
{"不支持此类界面(HRESULT异常:0x80004002(E_NOINTERFACE))"}
我需要将阅读器转换为数组吗?
答案 0 :(得分:0)
要使用CopyFromRecordset
,您需要将SqlDataReader
替换为ADODB.Recordset
。不要忘记添加对 Microsoft ActiveX Data Objects 2.x 库的引用。