예제 #1
0
        private void SaveAnimalToStorage(string topic, string imageId, string contentType)
        {
            //det namn vår table ska ha
            string tableName = "UglyAnimals";
            //Connection till table storage account
            CloudStorageAccount account = CloudStorageAccount.Parse(fuladjurstorageConnectionString);
            //Klient för table storage
            CloudTableClient tableStorage = account.CreateCloudTableClient();
            //Hämta en reference till tablen, om inte finns, skapa table
            CloudTable table = tableStorage.GetTableReference(tableName);

            table.CreateIfNotExists();

            var key = Guid.NewGuid().ToString();

            var fullName = imageId + GetEndingForType(contentType);

            var uglyAnimal = new UglyAnimal(key)
            {
                Topic        = topic,
                ImageId      = fullName,
                TotalPoints  = 0,
                NumberClicks = 0,
                Created      = DateTime.Now
            };

            //Sparar personen i signups table
            TableOperation insertOperation = TableOperation.Insert(uglyAnimal);

            table.Execute(insertOperation);
        }
예제 #2
0
        private void UpdateRating(string BildId, int rating)
        {
            // Retrieve storage account from connection string.
            CloudStorageAccount storageAccount = CloudStorageAccount.Parse(fuladjurstorageConnectionString);

            // Create the table client.
            CloudTableClient tableClient = storageAccount.CreateCloudTableClient();

            // Create the CloudTable object that represents the "UglyAnimals" table.
            CloudTable table = tableClient.GetTableReference("UglyAnimals");

            // Construct the query operation for all animals entities where PartitionKey="UglyAnimal".
            TableQuery <UglyAnimal> query = new TableQuery <UglyAnimal>().Where(TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, "UglyAnimal"));

            //Skicka till queue med hjälp av den connectionstring vi tidigare ställt in i configen
            QueueClient qc = QueueClient.CreateFromConnectionString(qConnectionString, qName);

            // Create a retrieve operation that takes a customer entity.
            TableOperation retrieveOperation = TableOperation.Retrieve <UglyAnimal>("UglyAnimal", BildId);

            // Execute the operation.
            TableResult retrievedResult = table.Execute(retrieveOperation);

            // Assign the result to a CustomerEntity object.
            UglyAnimal updateEntity = (UglyAnimal)retrievedResult.Result;

            if (updateEntity != null)
            {
                // Change the phone number.
                updateEntity.NumberClicks += 1;
                updateEntity.TotalPoints  += rating;

                // Create the InsertOrReplace TableOperation
                TableOperation insertOrReplaceOperation = TableOperation.InsertOrReplace(updateEntity);

                // Execute the operation.
                table.Execute(insertOrReplaceOperation);

                Console.WriteLine("Entity was updated.");
            }

            else
            {
                Console.WriteLine("Entity could not be retrieved.");
            }
        }