public static void ImportSubscriber(object param) { //Model_Subscriber cSub = new Model_Subscriber(); object[] parameters = (object[])param; DataTable data = (DataTable)parameters[0]; Model_SubscriberParamImport p = (Model_SubscriberParamImport)parameters[1]; foreach (DataRow row in data.Rows) { Model_Subscriber cSub = new Model_Subscriber { Email = (row.Table.Columns.Contains("Email") ? (row["Email"] == DBNull.Value ? "" : (string)row["Email"]) : ""), FirstName = (row.Table.Columns.Contains("FirstName") ? (row["FirstName"] == DBNull.Value ? "" : (string)row["FirstName"]) : ""), LastName = (row.Table.Columns.Contains("LastName") ? (row["LastName"] == DBNull.Value ? "" : (string)row["LastName"]) : ""), Sbin = true, SGID = int.Parse(p.Group) }; cSub.model_InsertSubscriber(cSub); Lock.AcquireWriterLock(Timeout.Infinite); SubScriberImportController.TotalCompleted += 1; SubScriberImportController.PercentCompleted = (decimal)SubScriberImportController.TotalCompleted * 100 / int.Parse(p.Total); Lock.ReleaseWriterLock(); } Lock.AcquireWriterLock(Timeout.Infinite); SubScriberImportController.Onprocess = false; Lock.ReleaseWriterLock(); }
public static int ImportNow(Model_SubscriberParamImport param) { int ret = 0; Model_SubscriberImportTemp import = new Model_SubscriberImportTemp(); import = import.GetImportTemp(); DataTable data = null; if (import != null) { try { FileInfo file = new FileInfo(HttpContext.Current.Server.MapPath(import.Path + import.FileName)); if (file.Exists) { string extension = file.Extension; switch (extension) { case ".csv": data = new GsCsvReader(import.Path, import.FileName).ResultDataTable; break; default: data = new ExcelReader(import.Path, import.FileName).GetDataSetCreatecolumn().Tables[0]; break; } if (data.Rows.Count > 0) { Lock.AcquireWriterLock(Timeout.Infinite); SubScriberImportController.TotalCompleted = 0; SubScriberImportController.PercentCompleted = 0.0M; SubScriberImportController.Onprocess = true; Lock.ReleaseWriterLock(); API_ThreadPool cpool = new API_ThreadPool(); object[] parameters = new object[] { data, param }; cpool.QueueWork(parameters, ImportSubscriber); } } ret = 1; } catch { } } return(ret); }
public static void UploadNow(Model_SubscriberParamImport parameters) { int ret = SubScriberImportController.ImportNow(parameters); bool success = false; string msg = "no"; if (ret > 0) { success = true; msg = "Import Completed!!"; } string res = (new BaseWebMethodAJax { success = success, msg = msg }).ObjectToJSON(); AppTools.SendResponse(HttpContext.Current.Response, res); }