Exemplo n.º 1
0
        public async Task <IActionResult> Post([FromForm] IFormFile formFile)
        {
            try
            {
                if (formFile.Length > 0)
                {
                    var data = new QRCodeFromFile
                    {
                        Name = formFile.FileName,
                        Size = formFile.Length
                    };

                    using (data.Stream = new MemoryStream())
                    {
                        await formFile.CopyToAsync(data.Stream);

                        var result = await _qRCodeProvider.Read(data);

                        return(Ok(result));
                    }
                }

                return(Ok(new { Message = "No file has been uploaded." }));
            }
            catch (Exception ex)
            {
                return(UnprocessableEntity(ex.Message));
            }
        }
Exemplo n.º 2
0
 public static GoQRCodeFromFileData ToGoQRCodeFromFileData(this QRCodeFromFile fromFile)
 {
     return(new GoQRCodeFromFileData
     {
         File = fromFile.Stream,
         Size = fromFile.Size,
         Name = fromFile.Name
     });
 }
Exemplo n.º 3
0
        private static async Task <QRCodeFromFile> LoadQRFromLocalFile(string filePath)
        {
            var result = new QRCodeFromFile();
            var file   = await File.ReadAllBytesAsync(filePath);

            result.Name   = filePath;
            result.Stream = new MemoryStream(file);

            return(result);
        }
Exemplo n.º 4
0
        async Task <QRCodeData> IQRCodeProvider.Read(QRCodeFromFile data)
        {
            var result   = new QRCodeData();
            var url      = BuildReadResourceUri();
            var response = await _restClientHelper.PostImageAsync(url, data.ToGoQRCodeFromFileData());

            if (response.Success)
            {
                result.Data = response.Data.Type;
            }

            return(result);
        }