public async Task <IActionResult> CreateFolder([FromForm] FolderUploadProfileViewModel formdata) { try { if (formdata.Directory == null) { formdata.Directory = ""; } // Find User var user = await _dbContext.Users.FindAsync(formdata.UserID); if (user == null) { return(NotFound(new { message = "User Not Found" })); } // Find Project var project = await _dbContext.Projects.FindAsync(formdata.ProjectID); if (project == null) { return(NotFound(new { message = "Project Not Found" })); } var filePath = formdata.Directory + "$$$.$$"; BlobClient blobClient = await _blobService.CreateFolder(project.Name.ToLower(), filePath); BlobProperties properties = blobClient.GetProperties(); // Create BlobFile var newBlobFile = new BlobFile { Container = blobClient.BlobContainerName, Directory = formdata.Directory, Name = "$$$", Extension = ".$$", Size = (int)properties.ContentLength, Uri = blobClient.Uri.ToString(), DateCreated = properties.CreatedOn.UtcDateTime, LastModified = properties.LastModified.UtcDateTime, UserID = formdata.UserID, ProjectID = formdata.ProjectID }; // Update Database with entry await _dbContext.BlobFiles.AddAsync(newBlobFile); await _dbContext.SaveChangesAsync(); // Return Ok Status return(Ok(new { result = newBlobFile, message = "File Successfully Uploaded" })); } catch (Exception e) { // Return Bad Request If There Is Any Error return(BadRequest(new { error = e })); } }