74 lines
2.8 KiB
Markdown
74 lines
2.8 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- Common/DTS.CommonCore/Enums/GroupTemplates/GroupTemplateChannelFields.cs
|
||
|
|
- Common/DTS.CommonCore/Enums/GroupTemplates/GroupTemplateFields.cs
|
||
|
|
generated_at: "2026-04-17T16:37:01.677534+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "8d4381d6f54274f5"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Documentation: Group Template Field Enums
|
||
|
|
|
||
|
|
## 1. Purpose
|
||
|
|
|
||
|
|
This module defines two enumeration types within the `DTS.Common.Enums.GroupTemplates` namespace that serve as field identifiers for group template entities and their associated channels. These enums provide strongly-typed constants for referencing specific fields, likely used in data mapping, validation, serialization, or UI binding scenarios where field names need to be referenced programmatically rather than via magic strings.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Public Interface
|
||
|
|
|
||
|
|
### `GroupTemplateChannelFields`
|
||
|
|
**Namespace:** `DTS.Common.Enums.GroupTemplates`
|
||
|
|
|
||
|
|
Defines field identifiers for channel objects within group templates.
|
||
|
|
|
||
|
|
| Member | Implicit Value |
|
||
|
|
|--------|----------------|
|
||
|
|
| `Required` | 0 |
|
||
|
|
| `Name` | 1 |
|
||
|
|
| `ISOCode` | 2 |
|
||
|
|
| `Custom` | 3 |
|
||
|
|
| `DisplayOrder` | 4 |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
### `GroupTemplateFields`
|
||
|
|
**Namespace:** `DTS.Common.Enums.GroupTemplates`
|
||
|
|
|
||
|
|
Defines field identifiers for group template entities.
|
||
|
|
|
||
|
|
| Member | Implicit Value |
|
||
|
|
|--------|----------------|
|
||
|
|
| `Name` | 0 |
|
||
|
|
| `Description` | 1 |
|
||
|
|
| `Channels` | 2 |
|
||
|
|
| `LastModifiedBy` | 3 |
|
||
|
|
| `LastModified` | 4 |
|
||
|
|
| `AssociatedGroups` | 5 |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 3. Invariants
|
||
|
|
|
||
|
|
- Both enums use implicit integer backing values starting at 0, incrementing by 1 for each subsequent member.
|
||
|
|
- The `Name` member exists in both enums but represents different entities and has different implicit values (`1` in `GroupTemplateChannelFields`, `0` in `GroupTemplateFields`).
|
||
|
|
- All enum members are `public` by default (standard C# enum member visibility).
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 4. Dependencies
|
||
|
|
|
||
|
|
**Dependencies (what this module imports):**
|
||
|
|
- None. These are self-contained enum definitions with no external references.
|
||
|
|
|
||
|
|
**Dependents (what depends on this module):**
|
||
|
|
- Unknown from source alone. Consumers would reference the `DTS.Common.Enums.GroupTemplates` namespace to use these field identifiers.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 5. Gotchas
|
||
|
|
|
||
|
|
- **Member name collision:** `Name` exists in both enums. Code referencing these values must use the fully-qualified type or disambiguate via the enum type to avoid confusion.
|
||
|
|
- **Implicit value ordering:** The implicit integer values differ for semantically similar fields. For example, `Name` is value `1` in `GroupTemplateChannelFields` but `0` in `GroupTemplateFields`. Any serialization or persistence logic relying on these integer values should account for this.
|
||
|
|
- **No explicit values defined:** Neither enum explicitly assigns values to members. Refactoring (adding, removing, or reordering members) could break any code or stored data that depends on the implicit integer values.
|