Files
DP44/docs/ai/Common/DTS.CommonCore/Interface/ViewData.md

37 lines
1.6 KiB
Markdown
Raw Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- Common/DTS.CommonCore/Interface/ViewData/IViewDataView.cs
- Common/DTS.CommonCore/Interface/ViewData/IViewDataViewModel.cs
generated_at: "2026-04-17T16:05:00.429832+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "bb2e4e0477457c10"
---
# ViewData
### Purpose
This module defines the view/viewmodel contract pair for a "ViewData" feature within the DTS application. It follows the MVVM (Model-View-ViewModel) pattern by providing marker interfaces that extend base view and viewmodel abstractions, enabling the system to identify and bind ViewData components without imposing additional behavioral contracts.
### Public Interface
**`IViewDataView`** (interface, `DTS.Common.Interface` namespace)
- Inherits from: `IBaseView`
- Members: None (marker interface)
**`IViewDataViewModel`** (interface, `DTS.Common.Interface` namespace)
- Inherits from: `IBaseViewModel`
- Members: None (marker interface)
### Invariants
- Both interfaces must be implemented together in a matching View/ViewModel pair to maintain MVVM consistency.
- Implementations must satisfy the contracts of `IBaseView` and `IBaseViewModel` respectively (specific contracts not visible in this source).
### Dependencies
- **Depends on**: `DTS.Common.Base` (specifically `IBaseView` and `IBaseViewModel`)
- **Depended on by**: Cannot be determined from source alone (likely ViewData feature implementations and DI container registrations)
### Gotchas
- Neither interface defines any members beyond their base interfaces. Any ViewData-specific behavior must be defined in concrete implementations or other partial contracts not shown here.
---