-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Background:
Currently, TableStorage allows handling multiple types in blobs using a custom serializer, but table entities don't support this natively. This limits flexibility and type safety when storing heterogeneous entities within the same table.
Proposal:
Instead of creating a new tableset type, introduce three new types in a new project to enable fluent typing in tables:
-
FluentTableEntity<T..TX>
- Stores multiple types in a single table using a
$typefield to differentiate entity types.
- Stores multiple types in a single table using a
-
FluentPartitionTableEntity<T..TX>
- Partition key is set as the
$typevalue, further optimizing queries by type.
- Partition key is set as the
-
FluentRowKeyTableEntity<T..TX>
- Row key is set as the
$typevalue, supporting table designs requiring type-based row identification.
- Row key is set as the
Benefits:
- Flexible handling of multiple entity types per table
- Leverages existing custom serialization approaches
- Simplifies partitioning and querying by type
Action Items:
- Design and implement
FluentTableEntity<T..TX>,FluentPartitionTableEntity<T..TX>, andFluentRowKeyTableEntity<T..TX> - Document usage patterns and migration strategies
- Add tests and example scenarios for each new type
Label: enhancement
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request