Example #1
0
        /// <summary>
        /// Deletes the globally unique value.
        /// </summary>
        /// <param name="dataSetName">Name of the data set.</param>
        /// <param name="uniqueValue">The unique value.</param>
        public void DeleteGloballyUniqueValue(string dataSetName, string uniqueValue)
        {
            var itemToDelete = GetGloballyUniqueValue(dataSetName, uniqueValue);

            if (itemToDelete != null)
            {
                _serviceContext.DeleteObject(itemToDelete);
                _serviceContext.SaveChanges();
            }
            AzureCache.Remove(dataSetName + "-" + uniqueValue);
        }
Example #2
0
        //Update
        /// <summary>
        /// Updates the globally unique value.
        /// </summary>
        /// <param name="dataSetName">Name of the data set.</param>
        /// <param name="uniqueValue">The unique value.</param>
        /// <param name="distributionKey">The distribution key.</param>
        /// <exception cref="System.InvalidOperationException">The provided unique value doesn't exist</exception>
        public void UpdateGloballyUniqueValue(string dataSetName, string uniqueValue, long distributionKey)
        {
            var globallyUniqueValue = GetGloballyUniqueValue(dataSetName, uniqueValue, true);

            if (globallyUniqueValue != null)
            {
                globallyUniqueValue.DataSetName     = dataSetName;
                globallyUniqueValue.UniqueValue     = uniqueValue;
                globallyUniqueValue.DistributionKey = distributionKey;
                _serviceContext.UpdateObject(globallyUniqueValue);

                _serviceContext.SaveChanges();
            }
            else
            {
                throw new InvalidOperationException("The provided unique value doesn't exist");
            }

            AzureCache.Remove(dataSetName + "-" + uniqueValue);
            AzureCache.Put(dataSetName + "-" + uniqueValue, globallyUniqueValue);
        }