Non è stato possibile trovare il nome dello spazio dei nomi "SqlBulkCopy"

c# excel namespaces sqlbulkcopy

Domanda

qualcuno può aiutarmi per favore a correggere quell'errore. questo è il mio codice:

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);
}

Errori:

-Il tipo o il nome dello spazio dei nomi 'bulkCopy' non è stato trovato (ti manca una direttiva using o un riferimento all'assembly?)

-Non è stato possibile trovare il nome dello spazio dei nomi 'SqlBulkCopy' (manca una direttiva using o un riferimento all'assembly?)

-Non è stato possibile trovare il nome o lo spazio dei nomi 'OleDbConn' (ti manca una direttiva using o un riferimento all'assembly?)

Risposta accettata

SqlBulkCopy classe SqlBulkCopy appartiene allo spazio dei nomi System.Data.SqlClient . Aggiungi il tuo codice come un namespace come;

using System.Data.SqlClient;

Questo spazio dei nomi contiene in System.Data.dll

Per aggiungere riferimenti in Visual Studio, è possibile fare clic con il tasto destro del mouse su " Reference " in Solution Explorer e fare clic su Add Reference .

inserisci la descrizione dell'immagine qui

Cerca System.Data nella casella di ricerca e aggiungi la DLL di System.Data efficace alla tua soluzione.

inserisci la descrizione dell'immagine qui

Scopri ulteriori informazioni su Come: aggiungere o rimuovere riferimenti utilizzando la finestra di dialogo Aggiungi riferimento da MSDN .


Risposta popolare

Hai un riferimento a System.Data.dll nel tuo progetto e disponi di un'istruzione using System.Data.SqlClient nel tuo file?



Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow