57 lines
2.7 KiB
Markdown
57 lines
2.7 KiB
Markdown
|
|
---
|
||
|
|
source_files:
|
||
|
|
- Common/DTS.CommonCore/Interface/SystemSettings/TablesSettings/ITablesSettingsView.cs
|
||
|
|
- Common/DTS.CommonCore/Interface/SystemSettings/TablesSettings/ITablesSettingsModel.cs
|
||
|
|
generated_at: "2026-04-16T12:19:50.242418+00:00"
|
||
|
|
model: "zai-org/GLM-5-FP8"
|
||
|
|
schema_version: 1
|
||
|
|
sha256: "9b85701d1358796f"
|
||
|
|
---
|
||
|
|
|
||
|
|
# Documentation: Tables Settings Interfaces
|
||
|
|
|
||
|
|
## 1. Purpose
|
||
|
|
|
||
|
|
This module defines two marker interfaces for the "Tables Settings" feature within the System Settings subsystem. These interfaces establish type contracts for the View and ViewModel components in an MVVM (Model-View-ViewModel) architecture, allowing components to be identified and potentially resolved via dependency injection or reflection without exposing any domain-specific members at this interface level.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 2. Public Interface
|
||
|
|
|
||
|
|
### `ITablesSettingsView`
|
||
|
|
- **Namespace:** `DTS.Common.Interface`
|
||
|
|
- **Declaration:** `public interface ITablesSettingsView : IBaseView { }`
|
||
|
|
- **Inheritance:** Extends `IBaseView` (from `DTS.Common.Base`)
|
||
|
|
- **Members:** None defined (marker interface)
|
||
|
|
|
||
|
|
### `ITablesSettingsViewModel`
|
||
|
|
- **Namespace:** `DTS.Common.Interface`
|
||
|
|
- **Declaration:** `public interface ITablesSettingsViewModel : IBaseViewModel { }`
|
||
|
|
- **Inheritance:** Extends `IBaseViewModel` (from `DTS.Common.Base`)
|
||
|
|
- **Members:** None defined (marker interface)
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 3. Invariants
|
||
|
|
|
||
|
|
- Any class implementing `ITablesSettingsView` must also satisfy the contract of `IBaseView`.
|
||
|
|
- Any class implementing `ITablesSettingsViewModel` must also satisfy the contract of `IBaseViewModel`.
|
||
|
|
- The specific behavioral contracts of `IBaseView` and `IBaseViewModel` are not visible in the provided source; their requirements are inherited but unspecified here.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 4. Dependencies
|
||
|
|
|
||
|
|
### This module depends on:
|
||
|
|
- `DTS.Common.Base` — provides `IBaseView` and `IBaseViewModel` base interfaces.
|
||
|
|
|
||
|
|
### Consumers:
|
||
|
|
- Not determinable from the provided source alone. These interfaces are likely consumed by concrete View/ViewModel implementations and possibly a dependency injection container or navigation system.
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 5. Gotchas
|
||
|
|
|
||
|
|
- **Filename/Interface name mismatch:** The file `ITablesSettingsModel.cs` contains the interface `ITablesSettingsViewModel`, not `ITablesSettingsModel`. This naming inconsistency may cause confusion when locating types by filename.
|
||
|
|
- **Empty interfaces:** Both interfaces are marker interfaces with no members. Any functionality must be provided by the base interfaces (`IBaseView`, `IBaseViewModel`) or by casting to concrete types, which is not visible in this source.
|
||
|
|
- **Purpose unclear from source alone:** The specific behavior or data associated with "Tables Settings" is not defined at this interface level; the interfaces serve only as type identifiers.
|