Exemple #1
0
    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);
    }
Exemple #2
0
    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);
    }