public object StoreFile([FromBody] StoreFileRequest requestParameters) { var isDataSecure = WriteDataToFile(requestParameters); var isMetaDataSecure = WriteMetadataToFile(requestParameters.Metadata); int responseStatus; if (isDataSecure && isMetaDataSecure) { responseStatus = (int)HttpStatusCode.OK; } else { responseStatus = UnprocessableEntityHttpStatusCode; } if (Response != null) { Response.StatusCode = responseStatus; } return(new { Result = "Completed" }); }
private bool WriteDataToFile(StoreFileRequest requestParameters) { var fileLocation = Path.Combine(_appSettings.SqliteStorageFolderLocation, requestParameters.Metadata.FileName); try { var filePath = System.IO.File.Create(fileLocation); var fileWriter = new BinaryWriter(filePath); var bytes = Convert.FromBase64String(requestParameters.SqliteDataAsBase64); fileWriter.Write(bytes, 0, bytes.Length); fileWriter.Dispose(); } catch { System.IO.File.Delete(fileLocation); return(false); } return(true); }