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 int VerifyNow() { int ret = 0; List <Model_Subscriber> ms = SubScriberController.GetUnverifyList(); int intTotal = ms.Count; if (intTotal > 0) { try { Lock.AcquireWriterLock(Timeout.Infinite); SubScriberVerifytController.TotalCompleted = 0; SubScriberVerifytController.PercentCompleted = 0.0M; SubScriberVerifytController.Onprocess = true; Lock.ReleaseWriterLock(); int tNum = 20; int Size = (int)Math.Ceiling((decimal)(intTotal / tNum)); if (intTotal < tNum) { tNum = 1; Size = intTotal; } int pageSize = Size; for (int i = 0; i < tNum; i++) { int start = ((i * pageSize) + 1); int end = ((i * pageSize) + pageSize); List <Model_Subscriber> msfilter = ms.Where(r => r.RowNum >= start && r.RowNum <= end).ToList(); API_ThreadPool cpool = new API_ThreadPool(); object[] parameters = new object[] { msfilter, intTotal }; cpool.QueueWork(parameters, VerifySubscriber); } ret = 1; } catch { } } return(ret); }