Beispiel #1
0
        private T GetEntity <T>(DynamicTableEntity dynamicEntity, OperationContext context) where T : StorageEntity
        {
            T entity = TableEntity.ConvertBack <T>(dynamicEntity.Properties, context);

            entity.PartitionKey = dynamicEntity.PartitionKey;
            entity.RowKey       = dynamicEntity.RowKey;
            return(entity);
        }
        public static T ReadObject <T>(this IDictionary <string, EntityProperty> properties, string prefix) where T : new()
        {
            var keyPrefix        = $"{prefix}_";
            var nestedProperties = properties.Where(kvp => kvp.Key.StartsWith(keyPrefix))
                                   .ToDictionary(kvp => kvp.Key.Replace(keyPrefix, string.Empty), kvp => kvp.Value);

            if (!nestedProperties.Any())
            {
                return(default(T));
            }

            var instance = TableEntity.ConvertBack <T>(nestedProperties, null);

            return(instance);
        }
Beispiel #3
0
        public IEnumerable <T> GetRecords <T>()
        {
            IEnumerable <DynamicTableEntity> entities = TestCloudTable.ExecuteQuery(new TableQuery());

            return(entities.Select(e => TableEntity.ConvertBack <T>(e.Properties, new OperationContext())));
        }
Beispiel #4
0
 public static T ToBusinessEntity <T>(this DynamicTableEntity dynamicTableEntity) =>
 TableEntity.ConvertBack <T>(dynamicTableEntity.Properties, new OperationContext());