예제 #1
0
        public void Add(FeedbackTableModel feedback)
        {
            //AzureStoarge Table Insertion

            Task <bool> abc    = table.CreateIfNotExistsAsync();
            bool        result = abc.Result;


            TableOperation insertOperation = TableOperation.InsertOrMerge(feedback);

            table.ExecuteAsync(insertOperation);



            //this.sendMessageToQueue("Inserted");
        }
예제 #2
0
        public void Add(FeedbackTableModel feedback, byte[] binaryContent)
        {
            FeedbackUility utility   = new FeedbackUility();
            var            extension = Path.GetExtension(feedback.FileName);


            //Azure Blob Storage Insertion
            try
            {
                //string data = Base64Decode(binaryContent);
                //byte[] bytes = Encoding.UTF8.GetBytes(data);
                var _task = Task.Run(() => this.UploadFileToBlobAsync(feedback.FileName, binaryContent, utility.getMimeType(extension)));
                _task.Wait();
                string fileUrl = _task.Result;

                feedback.BlobUrl = fileUrl;

                //return fileUrl;
            }
            catch (Exception ex)
            {
                throw (ex);
            }

            //AzureStoarge Table Insertion

            Task <bool> abc    = table.CreateIfNotExistsAsync();
            bool        result = abc.Result;


            TableOperation insertOperation = TableOperation.InsertOrMerge(feedback);

            table.ExecuteAsync(insertOperation);



            //this.sendMessageToQueue("Inserted");
        }
예제 #3
0
        public ActionResult <SuccessModel> Create([FromForm] FeedbackModel feedback)
        {
            SuccessModel success = null;

            //DateTime.Now.
            try
            {
                if (feedback.BinaryContent != null && feedback.BinaryContent.Length > 0)
                {
                    FeedbackTableModel model = new FeedbackTableModel(DateTime.Now.ToLocalTime().ToString("yyyy-MM-dd"), Guid.NewGuid().ToString())
                    {
                        Email        = feedback.Email,
                        Comments     = feedback.Comments,
                        EmpId        = feedback.EmpId,
                        Link         = feedback.Link,
                        TilesName    = feedback.TilesName,
                        SubTilesName = feedback.SubTilesName,
                        FileName     = feedback.BinaryContent.FileName
                    };

                    using (var ms = new MemoryStream())
                    {
                        feedback.BinaryContent.CopyTo(ms);
                        var    fileBytes = ms.ToArray();
                        string s         = Convert.ToBase64String(fileBytes);
                        // act on the Base64 data

                        feedbackRepository.Add(model, Convert.FromBase64String(s));
                    }
                }
                else
                {
                    FeedbackTableModel model = new FeedbackTableModel(DateTime.Now.ToLocalTime().ToString("yyyy-MM-dd"), Guid.NewGuid().ToString())
                    {
                        Email        = feedback.Email,
                        Comments     = feedback.Comments,
                        EmpId        = feedback.EmpId,
                        Link         = feedback.Link,
                        TilesName    = feedback.TilesName,
                        SubTilesName = feedback.SubTilesName,
                        FileName     = "N/A",
                        BlobUrl      = "N/A"
                    };



                    feedbackRepository.Add(model);
                }


                success = new SuccessModel {
                    ResponseCode = "200", ResponseMessage = "Data Uploaded OK"
                };
            }
            catch (Exception ex)
            {
                success = new SuccessModel {
                    ResponseCode = "400", ResponseMessage = ex.Message
                };
            }


            return(success);
        }