public VirtualFileResult GetVirtualFileResultDemo(string filename) { string path = "attachment/" + filename; string contentType = SPClass.GetContenttype(filename); return(new VirtualFileResult(path, contentType)); }
public FileResult GetFileResultDemo(string filename) { string path = "/attachment/" + filename; string contentType = SPClass.GetContenttype(filename); return(File(path, contentType)); }
private void SendMessageToWorker(SPClass serialPortClassWhichMessageHasBeenSentTo, string message) { if (serialPortWorkers.TryGetValue(serialPortClassWhichMessageHasBeenSentTo, out SerialPortWorker worker)) { SerialPortWorkerState currentWorkerState = worker.CurrentState; Helper.NLogger.Debug($"Próba wysłania wiadomości: {message} do workera: {worker} ({worker})"); Helper.NLogger.Debug($"Worker jest w trybie: {currentWorkerState}"); if (currentWorkerState == SerialPortWorkerState.STARTED) { Helper.NLogger.Trace("Usuwanie nadmiaru spacji..."); message = Regex.Replace(message, @"\s+", " "); Helper.NLogger.Trace("Do workera zostanie wysłana wiadomosć do przetworzenia."); worker.WorkOnReceivedMessage(message); } else if (currentWorkerState == SerialPortWorkerState.STOPPED) { Helper.NLogger.Trace("Worker zostanie usunięty (bez wysyłania wiadmości!)."); RemoveWorkerFromCollection(serialPortClassWhichMessageHasBeenSentTo); } else //SerialPortWorkerState.PAUSED { } } else { Helper.NLogger.Warn($"Wokrer o klasie: {serialPortClassWhichMessageHasBeenSentTo} nie istnieje. Wiadomość: >>{message}<< nie może zostać wysłana"); } }
private void Worker_ChangedState(object sender, ChangedStateEventArgs e) { SerialPortWorkerState workerState = e.WorkerState; Helper.NLogger.Debug($"Sender: {sender}, has sent state {workerState}"); SerialPortWorker worker = sender as SerialPortWorker; if (worker != null) { SPClass workerClass = worker.SP_CLASS_TYPE; switch (workerState) { case SerialPortWorkerState.STARTED: break; case SerialPortWorkerState.PAUSED: break; case SerialPortWorkerState.STOPPED: RemoveWorkerFromCollection(workerClass); break; default: break; } } }
public PhysicalFileResult GetPhysicalFileResultDemo(string filename) { string path = "/wwwroot/attachment/" + filename; string contentType = SPClass.GetContenttype(filename); return(new PhysicalFileResult(_hostingEnvironment.ContentRootPath + path, contentType)); }
public FileContentResult GetFileContentResultDemo(string filename) { string path = "wwwroot/attachment/" + filename; byte[] fileContent = System.IO.File.ReadAllBytes(path); string contentType = SPClass.GetContenttype(filename); return(new FileContentResult(fileContent, contentType)); }
public async Task <FileContentResult> GetFileContentResultDemoAsync(string filename) { string path = "wwwroot/attachment/" + filename; byte[] data = await System.IO.File.ReadAllBytesAsync(path); string contentType = SPClass.GetContenttype(filename); return(new FileContentResult(data, contentType)); }
public FileStreamResult GetFileStreamResultDemo(string filename) //download file { string path = "wwwroot/attachment/" + filename; var stream = new MemoryStream(System.IO.File.ReadAllBytes(path)); string contentType = SPClass.GetContenttype(filename); return(new FileStreamResult(stream, new MediaTypeHeaderValue(contentType)) { FileDownloadName = filename }); }
public ActionResult GetAttachment(int ID) { byte[] fileContent; string fileName = string.Empty; Attachment attachment = new Attachment(); attachment = _appContext.attachments.Select(m => m).Where(m => m.id == ID).FirstOrDefault(); string contentType = SPClass.GetContenttype(attachment.FileName); fileContent = (byte[])attachment.attachment; return(new FileContentResult(fileContent, contentType)); }
public IActionResult Index(AttachmentViewModel model) { if (model.attachment != null) { var uniqueFileName = SPClass.CreateUniqueFileExtension(model.attachment.FileName); var uploads = Path.Combine(_hostingEnvironment.WebRootPath, "attachment"); var filePath = Path.Combine(uploads, uniqueFileName); model.attachment.CopyTo(new FileStream(filePath, FileMode.Create)); Attachment attachment = new Attachment(); attachment.FileName = uniqueFileName; attachment.Description = model.Description; attachment.attachment = SPClass.GetByteArrayFromImage(model.attachment); _appContext.attachments.Add(attachment); _appContext.SaveChanges(); } return(RedirectToAction("index")); }
public void StartMonitoringLoop() { try { if (CToken.IsCancellationRequested) { CTokenSource = new CancellationTokenSource(); } using (SerialPort serial = new SerialPort(this.SerialPortName, this.SerialPortBaudrate)) { serial.Open(); StartAllWorkers(); while (!CToken.IsCancellationRequested) { string newLine = serial.ReadLine(); string message = ReadMessage(newLine); SPClass serialPortClassWhichMessageHasBeenSentTo = ReadPrefixAndChooseClass(newLine); SendMessageToWorker(serialPortClassWhichMessageHasBeenSentTo, message); Thread.Sleep(100); Helper.NLogger.Debug("\n\n"); } } } catch (Exception ex) { Helper.NLogger.Error($"\n{ex.Message} \n{ex.InnerException}\n{ex.StackTrace}\n"); ExceptionOccurred?.Invoke(this, new EventArgs()); } }
private void RemoveWorkerFromCollection(SPClass workerClass) { serialPortWorkers.Remove(workerClass); }