37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
|
|
---
|
||
|
|
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.
|
||
|
|
|
||
|
|
---
|