Ejemplo n.º 1
0
        public void Execute(IJobExecutionContext context)
        {
            using (RSSNewsContext db = new RSSNewsContext())
            {
                SourcesXMLHandler xml = new SourcesXMLHandler(context.JobDetail.JobDataMap.GetString("XMLPath"));

                var approvedSources = xml.GetEntries();
                if (approvedSources == null)
                {
                    return;
                }

                // Delete sources not in XML
                var ToDel = db.Sources.ToList().Where(n => !approvedSources.Exists(a => a.Address == n.Address));
                if (ToDel.Count() > 0)
                {
                    db.Sources.RemoveRange(ToDel);
                    db.SaveChanges();
                }

                // Add sources and Modify categories if needed
                db.Sources.AddOrUpdate(p => p.Address, approvedSources.Select(n => new Source
                {
                    Address  = n.Address,
                    Category = n.Category
                }).ToArray());
                db.SaveChanges();
            }
        }
Ejemplo n.º 2
0
 protected void Application_Start()
 {
     AreaRegistration.RegisterAllAreas();
     FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
     RouteConfig.RegisterRoutes(RouteTable.Routes);
     BundleConfig.RegisterBundles(BundleTable.Bundles);
     SourcesXMLHandler.CreateXMLIfNotExists(Server.MapPath("~/Sources.xml"));
     JobScheduler.Start(Server.MapPath("~/Sources.xml"));
 }