--- source_files: - Common/DTS.CommonCore/Interface/CheckChannels/ICheckChannelsView.cs - Common/DTS.CommonCore/Interface/CheckChannels/ICheckChannelsViewModel.cs - Common/DTS.CommonCore/Interface/CheckChannels/ICheckChannelsMenuView.cs - Common/DTS.CommonCore/Interface/CheckChannels/ICheckChannelsMenuViewModel.cs generated_at: "2026-04-17T16:34:43.911097+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "3147d34744b82543" --- # Documentation: CheckChannels Interfaces ## 1. Purpose This module defines four marker interfaces for the CheckChannels feature within the DTS application, following the Model-View-ViewModel (MVVM) architectural pattern. These interfaces establish contracts for View and ViewModel components, separating the main CheckChannels view from its Ribbon-based menu interface. They serve as extension points for type identification, dependency injection, and navigation registration within the broader system. --- ## 2. Public Interface ### `ICheckChannelsView` - **Namespace:** `DTS.Common.Interface` - **Inherits from:** `DTS.Common.Base.IBaseView` - **Signature:** `public interface ICheckChannelsView : IBaseView { }` - **Description:** Marker interface for the primary CheckChannels view. Defines no additional members beyond its base interface. ### `ICheckChannelsViewModel` - **Namespace:** `DTS.Common.Interface` - **Inherits from:** `DTS.Common.Base.IBaseViewModel` - **Signature:** `public interface ICheckChannelsViewModel : IBaseViewModel { }` - **Description:** Marker interface for the CheckChannels ViewModel. Defines no additional members beyond its base interface. ### `ICheckChannelsMenuView` - **Namespace:** `DTS.Common.Interface` - **Inherits from:** `DTS.Common.RibbonControl.IRibbonView` - **Signature:** `public interface ICheckChannelsMenuView : IRibbonView { }` - **Description:** Marker interface for the CheckChannels Ribbon menu view. Defines no additional members beyond its base interface. ### `ICheckChannelsMenuViewModel` - **Namespace:** `DTS.Common.Interface` - **Inherits from:** `DTS.Common.RibbonControl.IRibbonViewModel` - **Signature:** `public interface ICheckChannelsMenuViewModel : IRibbonViewModel { }` - **Description:** Marker interface for the CheckChannels Ribbon menu ViewModel. Defines no additional members beyond its base interface. --- ## 3. Invariants - All four interfaces are marker interfaces with no additional members; any invariants must be defined by their respective base interfaces (`IBaseView`, `IBaseViewModel`, `IRibbonView`, `IRibbonViewModel`). - The View/ViewModel pairing convention implies that `ICheckChannelsView` should be paired with `ICheckChannelsViewModel`, and `ICheckChannelsMenuView` should be paired with `ICheckChannelsMenuViewModel`. - The separation of "Menu" interfaces suggests a distinction between the main view and a Ribbon-specific menu view, but specific behavioral constraints are not defined in these interfaces. --- ## 4. Dependencies ### This module depends on: - `DTS.Common.Base` — provides `IBaseView` and `IBaseViewModel` base interfaces - `DTS.Common.RibbonControl` — provides `IRibbonView` and `IRibbonViewModel`