feat(working-with-hyperlinks): add 35 compiler-validated C# examples - Working With Hyperlinks [26.8.0/net8.0] - #92
Merged
amjad-sahi merged 41 commits intoAug 28, 2026
Conversation
…ress-to-enable-sending-email-directly-from-the-shape Task: Add a hyperlink using a mailto address to enable sending email directly from the shape - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…d-shape-pointing-to-an-external-website-with-a-descriptive-name Task: Add a new hyperlink to the selected shape pointing to an external website with a descriptive name - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…es-whose-hyperlinks-target-external-domains-and-list-their-identifiers Task: Apply a filter to select only shapes whose hyperlinks target external domains and list their identifiers - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…erlinks-only-to-shapes-that-meet-a-specific-custom-property-value Task: Apply conditional logic to add hyperlinks only to shapes that meet a specific custom property value - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…s-within-a-shape-and-consolidate-them-into-a-single-entry Task: Check for duplicate hyperlink names within a shape and consolidate them into a single entry - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…tach-it-to-another-shape-with-a-modified-description Task: Clone an existing hyperlink and attach it to another shape with a modified description - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…es-where-hyperlink-targets-differ-outputting-differences-to-the-console Task: Compare two diagrams and list shapes where hyperlink targets differ outputting differences to the console - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…ss-property-to-navigate-to-a-specific-page-within-the-diagram Task: Configure the hyperlink s subaddress property to navigate to a specific page within the diagram - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…tical-navigation-hyperlinks-to-multiple-shapes-across-all-pages Task: Create a batch process adding identical navigation hyperlinks to multiple shapes across all pages - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…ng-default-hyperlink-properties-and-apply-them-programmatically-to-new-hyperlinks Task: Create a configuration file defining default hyperlink properties and apply them programmatically to new hyperlinks - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…f-document-in-a-new-browser-window Task: Create a hyperlink that opens a pdf document in a new browser window - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…link-addition-correctly-updates-the-hyperlinkcollection-count Task: Create a unit test verifying hyperlink addition correctly updates the hyperlinkcollection count - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…-scans-the-diagram-and-prints-each-shape-s-name-with-its-hyperlink-urls Task: Develop a console application that scans the diagram and prints each shape s name with its hyperlink urls - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…-associated-hyperlink-urls-to-a-csv-file-for-reporting Task: Export shape identifiers and their associated hyperlink urls to a csv file for reporting - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…the-number-of-hyperlinks-per-page-in-the-diagram Task: Generate a summary report showing the number of hyperlinks per page in the diagram - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…-connections-between-shapes-and-export-the-map-as-an-image-file Task: Generate a visual map of hyperlink connections between shapes and export the map as an image file - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…t-restores-original-hyperlink-settings-if-an-update-error-occurs Task: Implement a rollback mechanism that restores original hyperlink settings if an update error occurs - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…hyperlinks-from-shapes-on-a-specified-page-before-exporting Task: Implement a routine to remove all hyperlinks from shapes on a specified page before exporting - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…rmed-or-unreachable-hyperlink-addresses-during-addition Task: Implement error handling for malformed or unreachable hyperlink addresses during addition - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…ds-page-specific-hyperlinks-to-navigate-sequentially-through-diagram-pages Task: Implement pagination logic that adds page specific hyperlinks to navigate sequentially through diagram pages - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…ks-and-log-each-hyperlink-s-name-and-target-address Task: Iterate through a shape s hyperlinks and log each hyperlink s name and target address - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…m-modify-hyperlink-targets-and-write-the-updated-diagram-back-to-the-stream Task: Load a diagram from a memory stream modify hyperlink targets and write the updated diagram back to the stream - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…nd-access-a-shape-using-its-unique-identifier Task: Load the visio diagram from file and access a shape using its unique identifier - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…n-the-diagram-and-assign-page-link-hyperlinks-for-navigation Task: Locate shapes by their names within the diagram and assign page link hyperlinks for navigation - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…-s-target-frame-to-open-in-the-same-window Task: Programmatically set the hyperlink s target frame to open in the same window - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…-matching-its-name-and-save-the-updated-diagram Task: Remove a hyperlink from a shape by matching its name and save the updated diagram - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…rget-url-with-a-new-address-while-preserving-its-description Task: Replace an existing hyperlink s target url with a new address while preserving its description - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…ert-them-to-a-dictionary-and-pass-the-dictionary-to-a-logging-framework Task: Retrieve hyperlink properties convert them to a dictionary and pass the dictionary to a logging framework - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…from-a-shape-and-serialize-each-hyperlink-s-properties-into-json-format Task: Retrieve the hyperlink collection from a shape and serialize each hyperlink s properties into json format - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…operty-to-provide-tooltip-text-on-mouse-hover Task: Set the hyperlink s description property to provide tooltip text on mouse hover - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…an-old-domain-to-a-new-domain-via-string-replacement Task: Update all hyperlinks referencing an old domain to a new domain via string replacement - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…iagram-modify-hyperlinks-and-save-without-blocking-the-ui-thread Task: Use asynchronous i o to load the diagram modify hyperlinks and save without blocking the ui thread - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…ad-to-set-name-address-and-subaddress-simultaneously Task: Use hyperlinkcollection add overload to set name address and subaddress simultaneously - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…to-enumerate-all-hyperlinks-associated-with-a-specific-shape Task: Use the hyperlinkcollection class to enumerate all hyperlinks associated with a specific shape - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
…perlink-has-a-non-empty-description-property Task: Validate that each shape with a hyperlink has a non empty description property - Validated: dotnet build passed - Validated: dotnet run passed - Generator: Aspose.Diagram Examples Generator Agent v2.0 - Library: Aspose.Diagram for .NET 26.8.0 - Framework: net8.0 - Pipeline: MCP retrieval → rules injection → LLM repair
… API index and example table
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Working With Hyperlinks — Compiler-Validated C# Examples
What this PR does
Adds 35 AI-generated, compiler-validated C# examples for the Working With Hyperlinks category of Aspose.Diagram for .NET.
All examples were generated by the Aspose.Diagram Examples Generator Agent and passed the full three-attempt validation pipeline before being included.
Validation Summary
dotnet builddotnet runPipeline
Each example was generated and validated through:
Only examples that passed both
dotnet buildanddotnet runare included in this PR.Examples Added
add-a-hyperlink-using-a-mailto-address-to-enable-sending-email-directly-from-the-shape.csadd-a-new-hyperlink-to-the-selected-shape-pointing-to-an-external-website-with-a-descriptive-name.csapply-a-filter-to-select-only-shapes-whose-hyperlinks-target-external-domains-and-list-their-identifiers.csapply-conditional-logic-to-add-hyperlinks-only-to-shapes-that-meet-a-specific-custom-property-value.cscheck-for-duplicate-hyperlink-names-within-a-shape-and-consolidate-them-into-a-single-entry.csclone-an-existing-hyperlink-and-attach-it-to-another-shape-with-a-modified-description.cscompare-two-diagrams-and-list-shapes-where-hyperlink-targets-differ-outputting-differences-to-the-console.csconfigure-the-hyperlink-s-subaddress-property-to-navigate-to-a-specific-page-within-the-diagram.cscreate-a-batch-process-adding-identical-navigation-hyperlinks-to-multiple-shapes-across-all-pages.cscreate-a-configuration-file-defining-default-hyperlink-properties-and-apply-them-programmatically-to-new-hyperlinks.cscreate-a-hyperlink-that-opens-a-pdf-document-in-a-new-browser-window.cscreate-a-unit-test-verifying-hyperlink-addition-correctly-updates-the-hyperlinkcollection-count.csdevelop-a-console-application-that-scans-the-diagram-and-prints-each-shape-s-name-with-its-hyperlink-urls.csexport-shape-identifiers-and-their-associated-hyperlink-urls-to-a-csv-file-for-reporting.csgenerate-a-summary-report-showing-the-number-of-hyperlinks-per-page-in-the-diagram.csgenerate-a-visual-map-of-hyperlink-connections-between-shapes-and-export-the-map-as-an-image-file.csimplement-a-rollback-mechanism-that-restores-original-hyperlink-settings-if-an-update-error-occurs.csimplement-a-routine-to-remove-all-hyperlinks-from-shapes-on-a-specified-page-before-exporting.csimplement-error-handling-for-malformed-or-unreachable-hyperlink-addresses-during-addition.csimplement-pagination-logic-that-adds-page-specific-hyperlinks-to-navigate-sequentially-through-diagram-pages.csiterate-through-a-shape-s-hyperlinks-and-log-each-hyperlink-s-name-and-target-address.csload-a-diagram-from-a-memory-stream-modify-hyperlink-targets-and-write-the-updated-diagram-back-to-the-stream.csload-the-visio-diagram-from-file-and-access-a-shape-using-its-unique-identifier.cslocate-shapes-by-their-names-within-the-diagram-and-assign-page-link-hyperlinks-for-navigation.csprogrammatically-set-the-hyperlink-s-target-frame-to-open-in-the-same-window.csremove-a-hyperlink-from-a-shape-by-matching-its-name-and-save-the-updated-diagram.csreplace-an-existing-hyperlink-s-target-url-with-a-new-address-while-preserving-its-description.csretrieve-hyperlink-properties-convert-them-to-a-dictionary-and-pass-the-dictionary-to-a-logging-framework.csretrieve-the-hyperlink-collection-from-a-shape-and-serialize-each-hyperlink-s-properties-into-json-format.csset-the-hyperlink-s-description-property-to-provide-tooltip-text-on-mouse-hover.csupdate-all-hyperlinks-referencing-an-old-domain-to-a-new-domain-via-string-replacement.csuse-asynchronous-i-o-to-load-the-diagram-modify-hyperlinks-and-save-without-blocking-the-ui-thread.csuse-hyperlinkcollection-add-overload-to-set-name-address-and-subaddress-simultaneously.csuse-the-hyperlinkcollection-class-to-enumerate-all-hyperlinks-associated-with-a-specific-shape.csvalidate-that-each-shape-with-a-hyperlink-has-a-non-empty-description-property.csValidation Details
dotnet build— compiled without errors against Aspose.Diagram for .NET 26.8.0dotnet run— executed without unhandled exceptionsThis PR was created automatically by the Aspose.Diagram Examples Generator Agent. Merge after reviewing the examples above.