The type or namespace name 'SqlBulkCopy' could not be found

旧城冷巷雨未停 提交于 2019-12-11 05:23:52

问题


can someone help me please to fix that error. this is my code :

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data.OleDb;
using System.Data;
using Microsoft.ApplicationBlocks.Data;
using System.Configuration;

OleDbConnection ExcelCon = new OleDbConnection();
ExcelCon.ConnectionString = "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=C:\\Users\\pc\\Documents\\ExcellTest.xlsx;Extended Properties=\"Excel 12.0;HDR=Yes\"";
SqlConnection SqlCon = new SqlConnection();
SqlCon.ConnectionString = @"workstation id = PC-PC; user id=sa;Password=sapassword; data source=pc-pc; persist security info=True; initial catalog=CleanPayrollTest2";
string sSQLTable = "TestExcell";
string sClearSQL = "DELETE FROM " + sSQLTable;
SqlCommand SqlCmd = new SqlCommand(sClearSQL, SqlCon);
SqlCon.Open();
SqlCmd.ExecuteNonQuery();
SqlCon.Close(); 
DataTable dtSchema;
dtSchema = ExcelCon.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
OleDbCommand Command = new OleDbCommand ("select * FROM [" + dtSchema.Rows[0]["TABLE_NAME"].ToString() + "]", ExcelCon);
OleDbDataAdapter da = new OleDbDataAdapter(Command);
DataSet ds = new DataSet ();
da.Fill(ds);
dataGrid1.DataSource = ds.Tables[0];
    OleDbDataReader dr = Command.ExecuteReader();
SqlBulkCopy bulkCopy = new SqlBulkCopy(sSqlConnectionString); 
bulkCopy.DestinationTableName = sSQLTable; 
while (dr.Read())
{
    bulkCopy.WriteToServer(dr);
}

Errors:

-The type or namespace name 'bulkCopy' could not be found (are you missing a using directive or an assembly reference?)

-The type or namespace name 'SqlBulkCopy' could not be found (are you missing a using directive or an assembly reference?)

-The type or namespace name 'OleDbConn' could not be found (are you missing a using directive or an assembly reference?)


回答1:


SqlBulkCopy class belongs on System.Data.SqlClient namespace. Add your code as a namespace it like;

using System.Data.SqlClient;

This namespace contains in System.Data.dll

For adding reference in Visual Studio, you can right click "Reference" in Solution Explorer and click Add Reference.

Search System.Data in search box, and Add the top result System.Data dll to your solution.

Check out for more information for How to: Add or Remove References By Using the Add Reference Dialog Box from MSDN.




回答2:


Do you have a reference to System.Data.dll in your project and do you have a using System.Data.SqlClient statement in your file?



来源:https://stackoverflow.com/questions/14481047/the-type-or-namespace-name-sqlbulkcopy-could-not-be-found

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!