--- source_files: - DataPRO/DataPRO.Core/DataProConstants.cs generated_at: "2026-04-17T16:43:42.110119+00:00" model: "zai-org/GLM-5-FP8" schema_version: 1 sha256: "9a0ee15a0aa322d8" --- # Documentation: DataProConstants.cs ## 1. Purpose This module serves as a centralized location for constant values used throughout the DataPro system. It exists to eliminate magic strings and provide a single source of truth for configuration paths and other system-wide constants. Currently, its primary role is defining the path to the application's configuration file. --- ## 2. Public Interface ### Class: `DataProConstants` - **Kind**: `public static class` - **Namespace**: `DataPro.Core` - **Description**: A static container class holding compile-time constants for the DataPro application. ### Field: `CustomConfigPath` - **Signature**: `public const string CustomConfigPath = "DataPRO.exe.config"` - **Type**: `string` - **Description**: A compile-time constant containing the relative path to the application's configuration file. The value is `"DataPRO.exe.config"`. --- ## 3. Invariants - `CustomConfigPath` is a `const` (compile-time constant), meaning its value is embedded directly into calling assemblies at compile time. Changing this value requires recompilation of all dependent code. - The path is a relative path, not an absolute path. The actual file location resolved at runtime depends on the application's current working directory. --- ## 4. Dependencies ### This module depends on: - None. The file has no `using` statements and relies only on built-in C# language features. ### What depends on this module: - Unknown from source alone. Any module referencing `DataPro.Core.DataProConstants.CustomConfigPath` would depend on this file. --- ## 5. Gotchas 1. **Commented-out absolute path**: The source contains a commented-out line referencing an absolute path (`C:\Program Files\DataPro\bin\DataPro.config`). This suggests the configuration strategy was changed from an absolute installation path to a relative path. The reason for this change is not documented in the source. 2. **Misleading constant name**: The constant is named `CustomConfigPath`, but the current value (`DataPRO.exe.config`) follows the standard .NET application configuration file naming convention. It is unclear what is "custom" about this path, or whether the name is historical baggage from when it pointed to a non-standard location. 3. **Namespace/folder case discrepancy**: The namespace is declared as `DataPro.Core` (lowercase "o"), while the file path shows `DataPRO.Core` (uppercase "PRO"). This may cause confusion when navigating the codebase, though it has no runtime impact on Windows.