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); }
public IEnumerable <T> GetRecords <T>() { IEnumerable <DynamicTableEntity> entities = TestCloudTable.ExecuteQuery(new TableQuery()); return(entities.Select(e => TableEntity.ConvertBack <T>(e.Properties, new OperationContext()))); }
public static T ToBusinessEntity <T>(this DynamicTableEntity dynamicTableEntity) => TableEntity.ConvertBack <T>(dynamicTableEntity.Properties, new OperationContext());