New to Telerik Reporting? Download free 30-day trial

In ASP.NET Core 3.0 applications the PictureBox and CheckBox images are not displayed

Environment

Product Progress® Telerik® Reporting
Visual Studio version Visual Studio 2019

Description

PictureBox images and CheckBox marks are not displayed by the Html5 Report Viewer in .NET Core 3 application.

Error Message

"Synchronous operations are disallowed. Call WriteAsync or set AllowSynchronousIO to true instead."

Cause\Possible Cause(s)

In .NET Core 3 by default Synchronous operations are disallowed. Synchronous operations are necessary to download resources such as images used in the reports.

Solution

The Synchronous operations need to be manually allowed, for example by setting the AllowSynchronousIO to True in the container services. This can be done by adding the following code in the ConfigureServices method of the Startup.cs file for IIS.

this.services.Configure<IISServerOptions>(options =>
{
        options.AllowSynchronousIO = true;
 });

For Kestrel you may use code like the following in the Program.cs file:

public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
     WebHost.CreateDefaultBuilder(args)
         .UseStartup<Startup>()
         .ConfigureKestrel((context, options) =>
         {
             options.AllowSynchronousIO = true;
         })

See Also

Manual Setup of HTML5 Report Viewer in an ASP.NET Core 3+ application

In this article