From 6a0ca3229db72dedd3e22e2b4522b8428622ba64 Mon Sep 17 00:00:00 2001 From: KB Bot Date: Thu, 10 Apr 2025 10:31:27 +0000 Subject: [PATCH 1/3] Added new kb article dpl-resolve-ambiguous-references --- .../dpl-resolve-ambiguous-references.md | 61 +++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 knowledge-base/dpl-resolve-ambiguous-references.md diff --git a/knowledge-base/dpl-resolve-ambiguous-references.md b/knowledge-base/dpl-resolve-ambiguous-references.md new file mode 100644 index 00000000..6d5f5231 --- /dev/null +++ b/knowledge-base/dpl-resolve-ambiguous-references.md @@ -0,0 +1,61 @@ +--- +title: Resolving Ambiguous references +description: This article describes how to resolve ambiguous references due to cross-platform project references. +type: how-to +page_title: How to Resolve Ambiguous References +slug: dpl-resolve +tags: radspreadprocessing, document processing, wpf, ambiguous reference, extern alias +res_type: kb +ticketid: 1684241 +--- + +## Environment + +| Version | Product | Author | +| ---- | ---- | ---- | +| 2025.1.205| Telerik Document Processing|[Desislava Yordanova](https://www.telerik.com/blogs/author/desislava-yordanova)| + +## Description + +When developing a WPF application that utilizes RadSpreadProcessing for Document Processing to set a font in a spreadsheet, and the solution includes a cross-platform project referencing `Telerik.Documents.Core`, an ambiguous reference error may occur. The issue arises due to identical namespaces in both assemblies when both platform-specific projects and cross-platform projects are part of the solution. This knowledge base article also answers the following questions: +- How to resolve ambiguous reference errors in a WPF project using RadSpreadProcessing? +- How to use RadSpreadProcessing in a WPF application with cross-platform project references? +- How to set a spreadsheet font in WPF using RadSpreadProcessing without ambiguous references? + +## Solution + +To resolve the ambiguous reference error in a WPF application using RadSpreadProcessing alongside a cross-platform project, use the `extern alias` directive. This approach allows differentiating between assemblies that have the same namespace but are intended for different platforms. Follow the steps below to apply this solution: + +1. **Assign an alias to the conflicting assembly in the WPF project**. Right-click on the referenced assembly (`Telerik.Documents.Core` in the cross-platform project) in the Solution Explorer and select `Properties`. In the `Aliases` field, enter a unique alias (e.g., `NetFramework`). + +2. **Use the `extern alias` directive in your WPF project code**. At the top of your C# file where you are facing the ambiguous reference, declare the alias defined in step 1. This explicitly specifies which assembly to use for the conflicting types. + +```csharp +extern alias NetFramework; +using NetFramework::Telerik.Documents.Common.Model; +``` + +3. **Reference the `ThemableFontFamily` using the alias**. After specifying the extern alias, use it to qualify the namespace of the `ThemableFontFamily` class or any other ambiguous type. This disambiguates the reference and allows your code to compile successfully. + +```csharp +namespace YourNamespace +{ + public class YourClass + { + public void YourMethod() + { + // Use the ThemableFontFamily from the aliased assembly + ThemableFontFamily fontFamily = new ThemableFontFamily("Courier New"); + } + } +} +``` + +By following these steps, you can successfully resolve the ambiguous reference error and set the spreadsheet font in a WPF application using RadSpreadProcessing, even when your solution includes cross-platform projects. + +## See Also + +- [Telerik Document Processing Introduction](https://docs.telerik.com/devtools/document-processing/introduction) +- [What Versions of Document Processing Libraries are Distributed with the Telerik Products](https://docs.telerik.com/devtools/document-processing/knowledge-base/distribute-telerik-document-processing-libraries-net-versions) +- [Resolve Compile-Time Error Between RadPdfProcessing and Telerik Reporting](https://docs.telerik.com/devtools/document-processing/knowledge-base/resolve-compile-time-error-radpdfprocessing-telerik-reporting) +- [C# Extern Alias - Microsoft Documentation](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/extern-alias) From d0f12a47b47ea8ea389425cdd4019de193b0b72e Mon Sep 17 00:00:00 2001 From: Desislava Yordanova Date: Mon, 5 May 2025 19:48:32 +0300 Subject: [PATCH 2/3] new KB - Resolving Ambiguous references --- .../dpl-resolve-ambiguous-references.md | 26 +++++++++++------- knowledge-base/images/ambiguous_error.png | Bin 0 -> 40379 bytes knowledge-base/images/framework_aliases.png | Bin 0 -> 32240 bytes 3 files changed, 16 insertions(+), 10 deletions(-) create mode 100644 knowledge-base/images/ambiguous_error.png create mode 100644 knowledge-base/images/framework_aliases.png diff --git a/knowledge-base/dpl-resolve-ambiguous-references.md b/knowledge-base/dpl-resolve-ambiguous-references.md index 6d5f5231..398388c1 100644 --- a/knowledge-base/dpl-resolve-ambiguous-references.md +++ b/knowledge-base/dpl-resolve-ambiguous-references.md @@ -4,7 +4,7 @@ description: This article describes how to resolve ambiguous references due to c type: how-to page_title: How to Resolve Ambiguous References slug: dpl-resolve -tags: radspreadprocessing, document processing, wpf, ambiguous reference, extern alias +tags: spreadprocessing, document, processing, wpf, ambiguous, reference, extern, alias res_type: kb ticketid: 1684241 --- @@ -17,16 +17,23 @@ ticketid: 1684241 ## Description -When developing a WPF application that utilizes RadSpreadProcessing for Document Processing to set a font in a spreadsheet, and the solution includes a cross-platform project referencing `Telerik.Documents.Core`, an ambiguous reference error may occur. The issue arises due to identical namespaces in both assemblies when both platform-specific projects and cross-platform projects are part of the solution. This knowledge base article also answers the following questions: -- How to resolve ambiguous reference errors in a WPF project using RadSpreadProcessing? -- How to use RadSpreadProcessing in a WPF application with cross-platform project references? -- How to set a spreadsheet font in WPF using RadSpreadProcessing without ambiguous references? +When developing a WPF application that utilizes [RadSpreadProcessing]({%slug radspreadprocessing-overview%}) to set a font in a spreadsheet, and the solution includes a cross-platform project referencing `Telerik.Documents.Core`, an ambiguous reference error may occur. + +![Ambiguous Error](images/ambiguous_error.png) + +The issue arises due to identical namespaces in both assemblies when both platform-specific projects and cross-platform projects are part of the solution. ## Solution -To resolve the ambiguous reference error in a WPF application using RadSpreadProcessing alongside a cross-platform project, use the `extern alias` directive. This approach allows differentiating between assemblies that have the same namespace but are intended for different platforms. Follow the steps below to apply this solution: +The Telerik Document Processing libraries are available in .NET Framework, .NET 8/.NET 9 (or newer) for Windows and .NET Standard compatible versions. All versions are available as NuGet packages. The assemblies/packages for .NET Standard do not contain the word *Windows* in their name. Learn [What Versions of Document Processing Libraries are Distributed with the Telerik Products]({%slug distribute-telerik-document-processing-libraries-net-versions%}). + +In a WPF project, you need to use the assemblies containing the word *Windows* and avoid mixing .NET Framework and .NET Standard compatible versions. + +However, to resolve the ambiguous reference error in a WPF application using RadSpreadProcessing alongside a cross-platform project, use the [extern alias](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/extern-alias) directive. This approach allows differentiating between assemblies that have the same namespace but are intended for different platforms. Follow the steps below to apply this solution: + +1. **Assign an alias to the conflicting assembly in the WPF project**. Right-click on the referenced assembly in the Solution Explorer and select `Properties`. In the `Aliases` field, enter a unique alias (e.g., `NetFramework`). -1. **Assign an alias to the conflicting assembly in the WPF project**. Right-click on the referenced assembly (`Telerik.Documents.Core` in the cross-platform project) in the Solution Explorer and select `Properties`. In the `Aliases` field, enter a unique alias (e.g., `NetFramework`). +![NET Framework Aliases](images/framework_aliases.png) 2. **Use the `extern alias` directive in your WPF project code**. At the top of your C# file where you are facing the ambiguous reference, declare the alias defined in step 1. This explicitly specifies which assembly to use for the conflicting types. @@ -55,7 +62,6 @@ By following these steps, you can successfully resolve the ambiguous reference e ## See Also -- [Telerik Document Processing Introduction](https://docs.telerik.com/devtools/document-processing/introduction) -- [What Versions of Document Processing Libraries are Distributed with the Telerik Products](https://docs.telerik.com/devtools/document-processing/knowledge-base/distribute-telerik-document-processing-libraries-net-versions) -- [Resolve Compile-Time Error Between RadPdfProcessing and Telerik Reporting](https://docs.telerik.com/devtools/document-processing/knowledge-base/resolve-compile-time-error-radpdfprocessing-telerik-reporting) +- [What Versions of Document Processing Libraries are Distributed with the Telerik Products]({%slug distribute-telerik-document-processing-libraries-net-versions%}) +- [Resolve Compile-Time Error Between RadPdfProcessing and Telerik Reporting]({%slug resolve-compile-time-error-radpdfprocessing-telerik-reporting%}) - [C# Extern Alias - Microsoft Documentation](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/extern-alias) diff --git a/knowledge-base/images/ambiguous_error.png b/knowledge-base/images/ambiguous_error.png new file mode 100644 index 0000000000000000000000000000000000000000..c8e21e22fb469345e94c8a699aa2965757fd4ff6 GIT binary patch literal 40379 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 literal 0 HcmV?d00001 diff --git a/knowledge-base/images/framework_aliases.png b/knowledge-base/images/framework_aliases.png new file mode 100644 index 0000000000000000000000000000000000000000..2a4ce1ec4615d5d2c6e3835f3ea4438691f9ab89 GIT binary patch literal 32240 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 Qzz!0X2bu~+_pP4&54edJQUCw| literal 0 HcmV?d00001 From 63e1b7e7287cc05c4ee2a8e2b96dd898b034bc8d Mon Sep 17 00:00:00 2001 From: Desislava Yordanova Date: Wed, 14 May 2025 19:38:49 +0300 Subject: [PATCH 3/3] addressed review --- knowledge-base/dpl-resolve-ambiguous-references.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/knowledge-base/dpl-resolve-ambiguous-references.md b/knowledge-base/dpl-resolve-ambiguous-references.md index 398388c1..bc654523 100644 --- a/knowledge-base/dpl-resolve-ambiguous-references.md +++ b/knowledge-base/dpl-resolve-ambiguous-references.md @@ -13,16 +13,18 @@ ticketid: 1684241 | Version | Product | Author | | ---- | ---- | ---- | -| 2025.1.205| Telerik Document Processing|[Desislava Yordanova](https://www.telerik.com/blogs/author/desislava-yordanova)| +| 2025.1.205| RadSpreadProcessing|[Desislava Yordanova](https://www.telerik.com/blogs/author/desislava-yordanova)| ## Description -When developing a WPF application that utilizes [RadSpreadProcessing]({%slug radspreadprocessing-overview%}) to set a font in a spreadsheet, and the solution includes a cross-platform project referencing `Telerik.Documents.Core`, an ambiguous reference error may occur. +When developing a WPF application that utilizes [RadSpreadProcessing]({%slug radspreadprocessing-overview%}) to set a font in a spreadsheet (referencing `Telerik.Windows.Documents.Core`), and the solution includes a cross-platform project referencing `Telerik.Documents.Core`, an ambiguous reference error may occur. ![Ambiguous Error](images/ambiguous_error.png) The issue arises due to identical namespaces in both assemblies when both platform-specific projects and cross-platform projects are part of the solution. +>note This is just an example scenario for WPF combined with SpreadProcessing. Usually, such ambiguity can happen regardless of the project type or library, as long as the project is cross-platform and there is a reference to the .NET Standard and .NET Framework version of the same DPL assembly. + ## Solution The Telerik Document Processing libraries are available in .NET Framework, .NET 8/.NET 9 (or newer) for Windows and .NET Standard compatible versions. All versions are available as NuGet packages. The assemblies/packages for .NET Standard do not contain the word *Windows* in their name. Learn [What Versions of Document Processing Libraries are Distributed with the Telerik Products]({%slug distribute-telerik-document-processing-libraries-net-versions%}).