Exemple #1
0
        public IActionResult Post(ContactType contactType)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _db.ContactType.AddOrUpdate(contactType);
            _db.SaveChanges();
            return(Created(contactType));
        }
        public static async Task Run(
            [QueueTrigger("filemetadataproductionistest", Connection = "QueueStorage")]
            CloudQueueMessage myQueueItem,
            Binder binder,
            ILogger log)
        {
            //log.LogInformation($"C# Queue trigger function processed: {myQueueItem}");
            var dto = JsonConvert.DeserializeObject <DocumentDto>(myQueueItem.AsString);

            var blobName = dto.AzureFileName;
            //todo get blob from storage (by guid from the queue)
            var attributes = new Attribute[]
            {
                new BlobAttribute("docstoragecontaineristest/" + blobName),
                new StorageAccountAttribute("AzureWebJobsStorage")
            };
            CloudBlockBlob blob = await binder.BindAsync <CloudBlockBlob>(attributes);

            dto.DocumentContent = new byte[dto.DocumentContentLenght];
            var result = blob.DownloadToByteArrayAsync(dto.DocumentContent, 0).Result;



            //dto.DocumentContent = ReadBlob("docstoragecontaineristest", blobName, dto.DocumentContentLenght);

            var connectionString = Environment.GetEnvironmentVariable("AdventureWorksDatabase");
            var optionsBuilder   = new DbContextOptionsBuilder <AdventureWorks2016Context>();

            optionsBuilder.UseSqlServer(connectionString);
            using (var context = new AdventureWorks2016Context(optionsBuilder.Options))
            {
                // add doc to the db
                //var owner = context.Employee.Where(x => x.BusinessEntityId == 1).FirstOrDefault();
                var docId = context.GetNextDocId();
                context.Document.Add(new Document()
                {
                    ChangeNumber    = 1,
                    DocumentContent = dto.DocumentContent,
                    DocumentNode    = docId,
                    DocumentSummary = dto.DocumentMetadata,
                    FileExtension   = Path.GetExtension(dto.FileName),
                    FileName        = dto.FileName,
                    FolderFlag      = false,
                    ModifiedDate    = DateTime.Now,
                    Owner           = 1,
                    Revision        = "",
                    Rowguid         = Guid.NewGuid(),
                    Status          = 1,
                    Title           = dto.DocumentName
                });
                context.SaveChanges();
            }
        }