コード例 #1
0
ファイル: CrawlManager.cs プロジェクト: mateipaul/PrsLic
        private void ParseProducts(DbModelContext dbContext)
        {
            int counter = 0;

            do
            {
                Thread.Sleep(3 * 1000);

                if (products.Count > 0)
                {
                    var currentProduct = products[counter];
                    parser.GetProduct(ref currentProduct);
                    counter++;

                    try
                    {
                        dbContext.SaveChanges();
                    }
                    catch (Exception ex)
                    {
                        GenericLogger.Error($"Error when trying to save changes for updating process for {currentProduct.Url}, \n ex : {ex.Message} \n {ex.StackTrace} \n {ex.InnerException.InnerException.Message}");
                    }
                }
            } while (counter < products.Count);
        }
コード例 #2
0
ファイル: CrawlManager.cs プロジェクト: mateipaul/PrsLic
        public void StartCrawling()
        {
            using (var dbContext = new DbModelContext())
            {
                Initialize(dbContext);

                ParseProducts(dbContext);
            }
        }
コード例 #3
0
ファイル: AllertCheckUtils.cs プロジェクト: mateipaul/PrsLic
        private List <UrmarireProdus> GetFollowedInformation(DbModelContext dbContext)
        {
            var information = new List <UrmarireProdus>();

            information = (from info in dbContext.UrmarireProdus
                           join user in dbContext.Utilizator on info.Id_Utilizator equals user.Id
                           join prodct in dbContext.Produs on info.Id_Produs equals prodct.Id
                           where info.Invalid == false
                           select info).Include(p => p.Utilizator).Include(p => p.Produs).ToList();


            return(information);
        }
コード例 #4
0
ファイル: CrawlManager.cs プロジェクト: mateipaul/PrsLic
        private void GetProductsFromDB(DbModelContext dbContext)
        {
            retailerId = dbContext.Vanzator.Where(m => m.Nume.Equals(RetailerConfig.RetailerName)).Select(m => m.Id).FirstOrDefault();

            products = new RetailerCrawlProductCollection(RetailerConfig.RetailerName);

            var prods = (from prod in dbContext.Produs
                         join evol in dbContext.EvolutiaPretului on prod.Id equals evol.Id_Produs
                         join retailer in dbContext.Vanzator on prod.Id_Vanzator equals retailer.Id
                         where retailer.Id.Equals(retailerId)
                         select prod).Include(p => p.EvolutiaPretului).ToList();



            products.AddRange(prods);
        }
コード例 #5
0
ファイル: AllertCheckUtils.cs プロジェクト: mateipaul/PrsLic
        public void StartAllertCheck()
        {
            try
            {
                using (var dbModel = new DbModelContext())
                {
                    var followInformation = GetFollowedInformation(dbModel);

                    CheckFollowedInformation(ref followInformation);

                    dbModel.SaveChanges();
                }
            }
            catch (Exception ex)
            {
            }
        }
コード例 #6
0
        public ActionResult LineChart(string productId)
        {
            using (DbModelContext dbContext = new DbModelContext())
            {
                ArrayList xValues = new ArrayList();
                ArrayList yValues = new ArrayList();

                xValues.AddRange((from priceEvolution in dbContext.EvolutiaPretului where priceEvolution.Id_Produs == new Guid(productId) orderby priceEvolution.Data_Actualizare descending select priceEvolution.Data_Actualizare).Take(10).ToList());
                yValues.AddRange((from priceEvolution in dbContext.EvolutiaPretului where priceEvolution.Id_Produs == new Guid(productId) orderby priceEvolution.Data_Actualizare descending select priceEvolution.Pret).Take(10).ToList());

                new Chart(width: 300, height: 200, theme: ChartTheme.Blue).
                AddTitle("Evolutia Pretului").
                AddSeries(null, chartType: "Line", xValue: xValues, yValues: yValues).
                Write("bmp");
            }

            return(null);
        }
コード例 #7
0
ファイル: Global.asax.cs プロジェクト: ahmetcandan/AdminLTE
        protected void Application_Start()
        {
            Log.Info("Starting up...");


            var container = new ServiceContainer();

            container.EnableMvc();
            container.RegisterControllers(Assembly.GetExecutingAssembly());
            container.RegisterInstance(typeof(DbContext), DbModelContext.Create());
            container.Register <IUnitOfWork, UnitOfWork>();

            AreaRegistration.RegisterAllAreas();
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);
            BundleConfig.RegisterBundles(BundleTable.Bundles);

            //ControllerBuilder.Current.SetControllerFactory(new LightInjectDefaultControllerFactory());

            Log.Info("Routes and bundles registered");
            Log.Info("Started");
        }
コード例 #8
0
ファイル: CrawlManager.cs プロジェクト: mateipaul/PrsLic
        private void Initialize(DbModelContext dbContext)
        {
            GetProductsFromDB(dbContext);

            GetParser();
        }
コード例 #9
0
 public DbModelContext Init()
 {
     return(dbcontext ?? (dbcontext = new DbModelContext()));
 }
コード例 #10
0
ファイル: UnitOfWork.cs プロジェクト: buildigor/vanovich
 public UnitOfWork()
 {
     _context = new DbModelContext();
 }
コード例 #11
0
 public GenericRepository(DbModelContext dbModelContext)
 {
     _context = dbModelContext;
 }
コード例 #12
0
 public ProductsController(DbModelContext context)
 {
     _context = context;
 }