Рейтинг:
2
ejazwaquif
Как уже предположил Сандип, вам нужно создать консольное приложение, которое вы можете периодически планировать с помощью планировщика задач.
Итак, вот код, который войдет в консольное приложение:
static void Main(string[] args)
{
ReadExcelAndPushInTable();
}
private void ReadExcelAndPushInTable()
{
DirectoryInfo dir = new DirectoryInfo(networkPath);
if (!dir.Exists) { return; }
DataSet dataset = new DataSet();
string srcFile = excelFilName;
string myConnection = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + srcFile + ";Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";";
OleDbConnection conn = new OleDbConnection(myConnection);
string strSQL = "SELECT * FROM ['" + sheetName + "']";
OleDbCommand cmd = new OleDbCommand(strSQL, conn);
OleDbDataAdapter adapter = new OleDbDataAdapter(cmd);
adapter.Fill(dataset);
DataTable dt = new DataTable();
dt.Columns.Add("Column1"); //Column from db table
dt.Columns.Add("Column2"); //Column from db table
if (dataset.Tables[0].Rows.Count > 0)
{
for(var i=0;i<=dataset.Tables[0].Rows.Count;i++)
{
dt.Rows.Add(dataset.Tables[0].Rows[i]["Column1"],dataset.Tables[0].Rows[i]["Column2"]);
}
}
//Here you have the DataTable ready with excel
//values, best way to dump this data into db table
//is to use table type parameter in stored
//procedure and Update or insert into the table
// from stored procedure itself
}
Member 11535374
@ejazwaquif Привет, я работаю над кодом, заданным вами, каково будет значение функций thses? string srcFile = excelFilName; и string strSQL = " SELECT * FROM ['" + sheetName + "']";
ejazwaquif
networkPath: должно быть что - то вроде - //Source/ExcelFolder
srcFile : должен быть полный путь и имя excel, который присутствует в 'ExcelFolder', например - //Source/ExcelFolder/Sample.xlsx
sheetName : поскольку в вашей книге excel может присутствовать несколько листов.Вы должны указать, какой из них вы хотите использовать, например ' sheet1$'
Примечание: Вы должны добавить '$' с именем листа, например Sheet1$
Пожалуйста, дайте мне знать, если вам понадобится дополнительная помощь
Member 11535374
Привет, чувак, могу я получить твой почтовый идентификатор?
ejazwaquif
Привет, вот мой идентификатор emaid:
ejazcan@gmail.com
Рейтинг:
1
Sandeep1003
Это может быть консольное приложение,которое можно запланировать с помощью планировщика задач Windows для периодического выполнения. Консольное приложение должно иметь такой код
Читать общий файл расположение
Dim myStream As IO.FileStream = IO.File.Open("\\myserver\myshare\myfile", IO.FileMode.Open)
Dim myBytes As Byte()
myStream.Read(myBytes, 0, numberOfBytesToRead)
Тогда прочитайте данные, а потом сдать в сервис паутинки для вставки.
Все это должно быть в консольном приложении.