public NotificationHub() { if (!isRunning) { Task.Factory.StartNew(async() => { while (true) { using (SCMSEntities db = new SCMSEntities()) { try { var data = db.Proc_Machines().ToList(); Clients.All.Machines(data); } catch (Exception e) { Clients.All.Error("Error:\r\n" + e.Message); } } await Task.Delay(5000); } }, TaskCreationOptions.RunContinuationsAsynchronously); isRunning = true; } }
public HttpResponseMessage Get() { try { var mc = db.Proc_Machines().ToList(); var response = new HttpResponseMessage(HttpStatusCode.OK); response.Content = new StringContent(JsonConvert.SerializeObject(mc)); response.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/json"); return(response); } catch (Exception) { return(new HttpResponseMessage(HttpStatusCode.BadRequest)); } }
public async Task <string> Send_GetMachineOnline() { return(await Task.Factory.StartNew(() => { CommandModel cmd = new CommandModel(); using (SCMSEntities db = new SCMSEntities()) { var machines = db.Proc_Machines().ToList(); cmd.Command = CommandMethod.GET.ToString(); cmd.Model = ModelMethod.MachineOnlineModel.ToString(); cmd.Data = JsonConvert.SerializeObject(machines); cmd.DataLength = machines.Count; return JsonConvert.SerializeObject(cmd); } })); }