Completed
Last Updated: 15 Nov 2023 11:42 by ADMIN
Release 2024 R1 PI1
Pavit
Created on: 07 Nov 2023 09:47
Type: Bug Report
1
Rendering with SkiaSharp throwing 'System.PlatformNotSupportedException' due to System.Drawing Attribute reference

I am rendering Telerik reports (version 17.2.23.1010) with custom code on Linux Docker in .NET 7 with SkiaSharp. When I have Grouping in the Report, I receive the following exception:

An unhandled exception has occurred while executing the request.
      System.PlatformNotSupportedException: System.Drawing.Common is not supported on this platform.
         at System.Drawing.ToolboxBitmapAttribute..ctor(Type t, String name)
         at System.Reflection.CustomAttribute._CreateCaObject(RuntimeModule pModule, RuntimeType type, IRuntimeMethodInfo pCtor, Byte** ppBlob, Byte* pEndBlob, Int32* pcNamedArgs)
         at System.Reflection.CustomAttribute.AddCustomAttributes(ListBuilder`1& attributes, RuntimeModule decoratedModule, Int32 decoratedMetadataToken, RuntimeType attributeFilterType, Boolean mustBeInheritable, ListBuilder`1 derivedAttributes)
         at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeModule decoratedModule, Int32 decoratedMetadataToken, Int32 pcaCount, RuntimeType attributeFilterType)
         at System.Reflection.CustomAttribute.GetCustomAttributes(RuntimeType type, RuntimeType caType, Boolean inherit)
         at System.Attribute.GetCustomAttributes(MemberInfo element, Type attributeType, Boolean inherit)
         at System.ComponentModel.ReflectTypeDescriptionProvider.ReflectGetAttributes(Type type)
         at System.ComponentModel.ReflectTypeDescriptionProvider.ReflectedTypeData.GetAttributes()
         at System.ComponentModel.TypeDescriptor.DefaultTypeDescriptor.GetAttributes()
         at System.ComponentModel.TypeDescriptor.GetAttributes(Type componentType)
         at System.ComponentModel.ReflectTypeDescriptionProvider.ReflectedTypeData.GetConverter(Object instance)
         at System.ComponentModel.TypeDescriptor.DefaultTypeDescriptor.GetConverter()
         at System.ComponentModel.TypeDescriptor.GetConverter(Type type)
         at System.ComponentModel.PropertyDescriptor.get_Converter()
         at Telerik.Reporting.Serialization.ObjectReader.ReadProperty(Object obj, PropertyDescriptor prop, Type propType)
         at Telerik.Reporting.Serialization.ObjectReader.ReadProperties(Object obj)
         at Telerik.Reporting.Serialization.ObjectReader.ReadObject(Type type)
         at Telerik.Reporting.Serialization.ObjectReader.ReadXmlElement(String name)
         at Telerik.Reporting.Serialization.ObjectReader.ReadCollection(Object collection)
         at Telerik.Reporting.Serialization.ObjectReader.ReadProperties(Object obj)
         at Telerik.Reporting.Serialization.ObjectReader.ReadObject(Type type)
         at Telerik.Reporting.Serialization.ObjectReader.ReadXmlElement(String name)
         at Telerik.Reporting.Serialization.ObjectReader.Deserialize(IResourceHandler handler)
         at Telerik.Reporting.XmlSerialization.XmlSerializerBase.Deserialize(XmlReader reader, IResourceHandler resourceHandler)
         at Telerik.Reporting.XmlSerialization.XmlSerializerBase.Deserialize(Stream stream, IResourceHandler resourceHandler)
         at Telerik.Reporting.XmlSerialization.ReportXmlSerializer.Telerik.Reporting.ReportSerialization.IXmlSerializer.Deserialize(Stream stream, IResourceHandler resourceHandler)
         at Telerik.Reporting.ReportPackager.UnpackageDocument(Stream packageStream)

Without Grouping the report is rendered fine on Linux.

On Windows, everything runs fine as well.

 

0 comments