--- source_files: - DataPRO/Modules/Database/DatabaseServices/DatabaseServicesModule.cs generated_at: "2026-04-17T16:43:59.359198+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "8adb3f6fd91327f3" --- # DatabaseServicesModule Documentation ## 1. Purpose The `DatabaseServicesModule` is a Prism module that registers database-related views and view models with the Unity dependency injection container. It serves as the composition root for database services UI components within the larger DTS application, specifically belonging to the "Prepare" assembly group. The module also provides assembly-level metadata (name, image, group, region) via custom attributes for use by the main application shell. ## 2. Public Interface ### `DatabaseServicesModule` Class Implements `Prism.Modularity.IModule`. | Member | Signature | Description | |--------|-----------|-------------| | Constructor | `DatabaseServicesModule(IUnityContainer unityContainer)` | Accepts an injected Unity container instance and stores it in `_unityContainer`. | | `Initialize` | `void Initialize()` | Registers six type mappings: `IDatabaseCopyView`→`DatabaseCopyView`, `IDatabaseCopyViewModel`→`DatabaseCopyViewModel`, `IDatabaseStatusBarView`→`DatabaseStatusBarView`, `IDatabaseStatusBarViewModel`→`DatabaseStatusBarViewModel`, `IDatabaseSwitchView`→`DatabaseSwitchView`, `IDatabaseSwitchViewModel`→`DatabaseSwitchViewModel`. | | `OnInitialized` | `void OnInitialized(IContainerProvider containerProvider)` | Empty implementation. | | `RegisterTypes` | `void RegisterTypes(IContainerRegistry containerRegistry)` | Calls `Initialize()`. | ### `DatabaseServicesModuleNameAttribute` Class Extends `TextAttribute`. Assembly-level attribute for providing the module name. | Member | Signature | Description | |--------|-----------|-------------| | Constructor | `DatabaseServicesModuleNameAttribute()` | Default constructor. | | Constructor | `DatabaseServicesModuleNameAttribute(string s)` | Overloaded constructor; parameter `s` is unused. | | `AssemblyName` | `override string AssemblyName { get; }` | Returns `AssemblyNames.DatabaseServices.ToString()`. | | `GetAttributeType` | `override Type GetAttributeType()` | Returns `typeof(TextAttribute)`. | | `GetAssemblyName`