protected void Application_Start() { //Evito las referencias circulares al trabajar con Entity FrameWork GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize; GlobalConfiguration.Configuration.Formatters.JsonFormatter.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects; //SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~/bin")); //Elimino que el sistema devuelva en XML, sólo trabajaremos con JSON GlobalConfiguration.Configuration.Formatters.Remove(GlobalConfiguration.Configuration.Formatters.XmlFormatter); AreaRegistration.RegisterAllAreas(); GlobalConfiguration.Configure(WebApiConfig.Register); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); //DB.PasswordSave(new LoginRequest { NifRegante = "ASAJA", Password = "******" }); //DB.PasswordSave(new LoginRequest { NifRegante = "CIERZO", Password = "******" }); //DB.PasswordSave(new LoginRequest { NifRegante = "AIMCRA", Password = "******" }); var cronExp = "0 0 8 * * ?";// cada dia a las 8:00 ScheduledTasks.JobScheduler.Start(cronExp).GetAwaiter().GetResult(); DB.InsertaEvento("Aplicación Start at " + DateTime.Now.ToString()); #if DEBUG #else CacheDatosHidricos.RecreateAll(); #endif }
public IHttpActionResult Recalcula() { try { CacheDatosHidricos.RecreateAll(); return(Json("OK")); } catch (Exception ex) { CacheDatosHidricos.recalculando = false; return(BadRequest(ex.Message)); } }
#pragma warning disable CS1998 // El método asincrónico carece de operadores "await" y se ejecutará de forma sincrónica public async Task Execute(IJobExecutionContext context) { #pragma warning restore CS1998 // El método asincrónico carece de operadores "await" y se ejecutará de forma sincrónica DB.InsertaEvento("Execute at " + DateTime.Now.ToString()); CacheDatosHidricos.RecreateAll(); }