Example #1
0
        private async Task CreateUser()
        {
            Console.WriteLine("Enter Id: ");
            string id = Console.ReadLine();

            Console.WriteLine("Enter name: ");
            string name = Console.ReadLine();

            Console.WriteLine("Enter email: ");
            string email = Console.ReadLine();

            Console.WriteLine("Enter profile picture URL: ");
            string profilepictureURL = Console.ReadLine();

            Console.WriteLine("Enter picture Id: ");
            string pictureid = Console.ReadLine();

            User newUser = new User
            {
                id    = id,
                name  = name,
                email = email,
            };

            ReviewPictureQueue newReviewPicture = new ReviewPictureQueue
            {
                id            = pictureid,
                ReviewPicture = profilepictureURL
            };

            await this.CreateUserDocumentIfNotExists("AzureCosmosPractiseDB", "User", newUser);

            await this.CreateReviewDocumentIfNotExists("AzureCosmosPractiseDB", "ReviewQueue", newReviewPicture);
        }
Example #2
0
        private async Task CreateReviewDocumentIfNotExists(string databaseName, string collectionName, ReviewPictureQueue reviewPicture)
        {
            try
            {
                await this.client.ReadDocumentAsync(UriFactory.CreateDocumentUri(databaseName, collectionName, reviewPicture.ReviewPicture));

                this.WriteToConsoleAndPromptToContinue("Found {0}", reviewPicture.ReviewPicture);
            }
            catch (DocumentClientException de)
            {
                if (de.StatusCode == HttpStatusCode.NotFound)
                {
                    await this.client.CreateDocumentAsync(UriFactory.CreateDocumentCollectionUri(databaseName, collectionName), reviewPicture);

                    this.WriteToConsoleAndPromptToContinue("Picture sent for review: {0}", reviewPicture.ReviewPicture);
                }
                else
                {
                    throw;
                }
            }
        }