Files

40 lines
3.4 KiB
Markdown
Raw Permalink Normal View History

2026-04-17 14:55:32 -04:00
---
source_files:
- DTS Viewer/DTS.Viewer.Reports/DTS.Viewer.PSDReport/Properties/AssemblyInfo.cs
generated_at: "2026-04-16T13:41:53.575227+00:00"
model: "zai-org/GLM-5-FP8"
schema_version: 1
sha256: "d475bf20384ac0ba"
---
# Documentation for AssemblyInfo.cs
## 1. Purpose
This file provides assembly-level metadata and configuration attributes for the `DTS.Viewer.PSDReport` assembly. It defines the assembly's identity, version information, copyright details, and COM visibility settings. This module exists to embed standard manifest information into the compiled output, allowing the .NET runtime and host applications to identify and version the `DTS.Viewer.PSDReport` component correctly.
## 2. Public Interface
This file does not expose classes or methods in the traditional sense. Instead, it configures the following assembly-level attributes which are exposed via the assembly's manifest:
* **`AssemblyTitle`**: Set to `"DTS.Viewer.PSDReport"`. Specifies the friendly name for the assembly.
* **`AssemblyProduct`**: Set to `"DTS.Viewer.PSDReport"`. Specifies the product name information.
* **`AssemblyCopyright`**: Set to `"Copyright © 2021"`. Specifies copyright information.
* **`AssemblyVersion`**: Set to `"1.0.0.0"`. Specifies the version of the assembly used by the common language runtime.
* **`AssemblyFileVersion`**: Set to `"1.0.0.0"`. Specifies the file version number displayed on the file properties dialog.
* **`ComVisible`**: Set to `false`. Indicates that types within this assembly are not visible to COM components by default.
* **`Guid`**: Set to `"3d57ca12-a637-4cdb-b673-d9a5ff0cf062"`. Specifies a unique identifier for the assembly, primarily used if the project is exposed to COM.
## 3. Invariants
* **COM Visibility:** All types within this assembly are explicitly marked as not visible to COM components (`ComVisible(false)`). If a specific type needs to be exposed to COM, that specific type must override this attribute.
* **Version Consistency:** Both the assembly version and the file version are locked to `"1.0.0.0"`.
* **Identity:** The `Guid` attribute guarantees a unique identity for this assembly, which remains constant regardless of build or version changes unless manually updated.
## 4. Dependencies
* **Internal Dependencies:**
* `System.Reflection`: Required for the assembly attributes.
* `System.Runtime.CompilerServices`: Required for compilation support (standard boilerplate).
* `System.Runtime.InteropServices`: Required for the `Guid` and `ComVisible` attributes.
* **External Dependencies:** None identified from this source file alone. The assembly name suggests it is part of a larger "DTS Viewer" solution, but the specific consumers of this assembly cannot be determined from this file.
## 5. Gotchas
* **Empty Metadata:** The `AssemblyDescription`, `AssemblyConfiguration`, `AssemblyCompany`, and `AssemblyTrademark` attributes are initialized with empty strings. This may result in missing metadata in the compiled DLL properties, which can be problematic for automated tooling or corporate governance standards.
* **Static Versioning:** The `AssemblyVersion` and `AssemblyFileVersion` are hardcoded as `"1.0.0.0"`. If the project uses a CI/CD pipeline that expects auto-incrementing versions (e.g., via `1.0.*` syntax or MSBuild tasks), this file overrides that behavior, potentially leading to versioning conflicts during deployment.