我需要導入多個csv文件,壓縮在一個壓縮文件夾中。我正在使用Visual Studio 2008/SQL server 2005.導入CSV文件
我正在考慮創建某種文件上傳.net控制或允許用戶將文件複製到網絡共享,然後運行某種導入實用程序以將數據導入到SQL服務器。
對我來說,棘手的部分是我應該編寫windows服務來導入文件,還是有其他更清潔的解決方案。
我需要導入多個csv文件,壓縮在一個壓縮文件夾中。我正在使用Visual Studio 2008/SQL server 2005.導入CSV文件
我正在考慮創建某種文件上傳.net控制或允許用戶將文件複製到網絡共享,然後運行某種導入實用程序以將數據導入到SQL服務器。
對我來說,棘手的部分是我應該編寫windows服務來導入文件,還是有其他更清潔的解決方案。
如果您想使其自動化,請編寫Windows服務。
您可以使用Timer並將其設置爲以設定的間隔運行導入。
或者設置FileSystemWatcher並在特定文件夾中查找.csv文件,在正在監視的目錄中創建新文件時,運行導入CSV的方法。
聽起來像你已經知道如何進行導入,所以上述只是兩個自動化過程的建議。
設置FileSystemWatcher的
FileSystemWatcher csvWatcher = new FileSystemWatcher();
csvWatcher.Path = "C:\Imports"; //Put the Dir to watch here
csvWatcher.Filter = "*.csv";
csvWatcher.EnableRaisingEvents = true;
csvWatcher.Created += new FileSystemEventHandler(csvWatcher_Created);
事件處理程序
void csvWatcher_Created(object Sender, FileSystemEventArgs e)
{
//Call Import Method
}
如果您希望用戶將其複製到網絡共享,一個窗口服務是最好的一段路要走。查看FileSystemWatcher,瞭解文件在文件夾中出現的時間。