Skip to content

Commit

Permalink
Todora asp net core reporting (#1545)
Browse files Browse the repository at this point in the history
* Create asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update _config.yml

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update overview.md

* Update host-reports-service-in-.net-6-with-minimal-api.md

* Update host-reports-service-in-.net-with-controllers.md

* Update host-reports-service-in-.net-5.md

* Update host-reports-service-in-.net-core-2.1-and-2.2.md

* Update how-to-host-reports-service-in-asp.net-core-3.1.md

* Update html5-viewer-telerik-rest-service.md

* Update overview.md

* Update host-reports-service-in-.net-5.md

* Update host-reports-service-in-.net-6-with-minimal-api.md

* Update host-reports-service-in-.net-core-2.1-and-2.2.md

* Update host-reports-service-in-.net-with-controllers.md

* Update overview.md

* Update html5-viewer-telerik-rest-service.md

* Update overview.md

* Update how-to-host-reports-service-in-asp.net-core-3.1.md

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md

* Update asp-net-core-reporting.md
  • Loading branch information
todorarabadzhiev authored Nov 22, 2024
1 parent 3861532 commit 7fe5410
Show file tree
Hide file tree
Showing 10 changed files with 93 additions and 4 deletions.
8 changes: 4 additions & 4 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,16 +124,16 @@ navigation:
position: 5
title: "Embedding Reports"
embedding-reports/cache-management:
position: 7
position: 70
title: "Cache Management"
embedding-reports/program-the-report-definition:
position: 8
position: 80
title: "Managing Reports Programmatically"
embedding-reports/program-the-report-definition/report-events:
position: 15
title: "Report Events"
embedding-reports/display-reports-in-applications:
position: 6
position: 60
title: "Displaying Reports"
embedding-reports/display-reports-in-applications/web-application:
position: 10
Expand Down Expand Up @@ -241,7 +241,7 @@ navigation:
position: 15
title: "Troubleshooting"
embedding-reports/host-the-report-engine-remotely:
position: 5
position: 50
title: "Generating Reports Remotely"
embedding-reports/host-the-report-engine-remotely/asp.net-web-api-implementation:
position: 10
Expand Down
60 changes: 60 additions & 0 deletions embedding-reports/asp-net-core-reporting.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: ASP.NET Core Reporting
page_title: ASP.NET Core Reporting – Telerik Reporting
description: "ASP.NET Core Reporting is a framework for generating and delivering dynamic reports in web apps using ASP.NET Core technology."
slug: asp-net-core-reporting
tags: telerik, reporting, reports, web, asp, net, core
published: True
position: 6
---

# Embedding Telerik Reporting in ASP.NET Core Reporting Applications

[ASP.NET Core](https://learn.microsoft.com/en-us/aspnet/core/introduction-to-aspnet-core) is an advanced Web technology that lets you build modern cross-platform client-side, server-side and combined applications. This article offers a brief overview of the most popular approaches to integrate and use Telerik Reporting in ASP.NET Core Web Reporting applications.

## Supported Operating Systems and Docker Containers

The article [Available .NET Support for Operating Systems and Docker Containers]({%slug telerikreporting/using-reports-in-applications/dot-net-core-support%}) elaborates on the specifics when deploying Telerik Reporting on different environments.

## Displaying Reports in ASP.NET Core Web Reporting Applications

The [HTML5 Report Viewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/overview%}) is an HTML/CSS/JS client-side widget suitable for any web application that works with JavaScript. This makes it the perfect widget for displaying Telerik Reporting Reports in all Web Reporting Applications.

### Requirements

.NET 6 introduced a [globalization-invariant mode](https://learn.microsoft.com/en-us/dotnet/core/runtime-config/globalization) which, if enabled, does not allow the creation of any culture except the invariant culture. The Report Engine relies on instantiating cultures to support localization, formatting, and unit conversion, so enabling invariant globalization will break the engine's functionality. Refer to the [Only invariant culture is supported in globalization-invariant mode]({%slug only-invariant-culture-is-supported-in-globalization-invariant-mode-error%}) article for instructions on how to disable the `Invariant Globalization` mode.

### Implementation

The article [Using the HTML5 Report Viewer in an ASP.NET Core application in .NET]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/web-application/html5-report-viewer/how-to-use-html5-report-viewer-in-an-asp.net-core-in-.net-5-application%}) is a step-by-step tutorial on embedding the HTML5 Report Viewer in ASP.NET Core Web Reporting projects.

## Generating Reports in ASP.NET Core Web Reporting Applications

The [Telerik Reporting REST Services]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/overview%}) provide an Application Programming Interface (API) over HTTP to the Reporting Engine that processes and renders [Telerik Reports]({%slug on-telerik-reporting%}#report-definition). The fully functional implementation of the service is available in the assembly/package `Telerik.Reporting.Services.AspNetCore`. It may be embedded in any ASP.NET Core Reporting Application and exposed in a custom controller (for example, `ReportsController`) inheriting the basic `ReportsControllerBase` class. The `ReportsController` may be used as a source of Report documents by Web Reporting, Desktop Reporting, and other third-party client applications.

### Implementation

There are different methods for configuring the Telerik Reporting REST Service in an ASP.NET Core Reporting project:

* [Hosting the Telerik Reporting REST Service in ASP.NET Core in .NET 6+ with __Minimal API__]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/how-to-host-reports-service-in-asp.net-core-in-.net-6-with-minimal-api%})
* [Hosting the Telerik Reporting REST Service in ASP.NET Core in .NET 6 and .NET 8 with __Top-Level Statements__]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/host-reports-service-in-.net-with-controllers%})
* [Hosting the Telerik Reporting REST Service in an ASP.NET Core Application in .NET 6, .NET 8 and .NET 9 with __Startup.cs__]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/how-to-host-reports-service-in-asp.net-core-in-.net-5%})

## Designing Reports in ASP.NET Core Web Reporting Applications

The [Web Report Designer]({%slug telerikreporting/designing-reports/report-designer-tools/web-report-designer/overview%}) is an HTML/CSS/JS client-side widget that lets developers embed a report designer into their web reporting applications. It is ready for embedding in the ASP.NET Core Reporting Applications to allow the users to create, edit, and preview their Telerik Web Reports directly from the browser.

### Web Report Designer Requirements

The Web Report Designer requires a Report Designer REST service, whose fully functional implementation resides in the assembly/package `Telerik.WebReportDesigner.Services` as explained in the section [Web Report Designer Implementation](#web-report-designer-implementation).

### Web Report Designer Implementation

The tutorial [Setting up the Web Report Designer in .NET applications]({%slug telerikreporting/designing-reports/report-designer-tools/web-report-designer/how-to-set-up-in-.net-5-and-.net-core-3.1-applications%}) elaborates on implementing the web designer widget and its REST Service in ASP.NET Core Web Reporting projects.

## See Also

* [Displaying Reports]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/overview%})
* [Telerik Report Viewer and Telerik Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/export-and-configure/cache-management/html5-report-viewer-and-reporting-rest-services%})
* [REST API Reference]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/overview%})
* [Report Sources]({%slug telerikreporting/designing-reports/report-sources/overview%})
Original file line number Diff line number Diff line change
Expand Up @@ -172,5 +172,6 @@ app.UseCors("ReportingRestPolicy");

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
* [ASP.NET Core Web API Implementation Overview]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/overview%})
* [Hosting in .NET 6+ with Minimal API]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/asp.net-core-web-api-implementation/how-to-host-reports-service-in-asp.net-core-in-.net-6-with-minimal-api%})
Original file line number Diff line number Diff line change
Expand Up @@ -175,3 +175,7 @@ app.UseCors("ReportingRestPolicy");
A full example can be found in the installation folder of Telerik Reporting:

`C:\Program Files (x86)\Progress\Telerik Reporting {{site.suiteversion}}\Examples\CSharp\.NET 6\ReportingRestServiceCorsDemo\CSharp.Net6.ReportingRestServiceCorsDemo`

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
Original file line number Diff line number Diff line change
Expand Up @@ -171,3 +171,7 @@ namespace AspNetCoreDemo.Controllers
## Test the service implementation

To ensure that the service operates, run the application and navigate to either of the General REST Service API URLs `{applicationRoot}/api/reports/formats` or `{applicationRoot}/api/reports/version`. The first should return a [JSON representing the supported rendering extensions]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/general-api/get-available-document-formats%}), and the second - the [version of the Reporting REST Service]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/general-api/get-version%}).

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
Original file line number Diff line number Diff line change
Expand Up @@ -245,3 +245,7 @@ app.UseCors("ReportingRestPolicy");
A full example can be found in the installation folder of Telerik Reporting:

`C:\Program Files (x86)\Progress\Telerik Reporting {{site.suiteversion}}\Examples\CSharp\.NET 6\ReportingRestServiceCorsDemo\CSharp.Net6.ReportingRestServiceCorsDemo`

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
Original file line number Diff line number Diff line change
Expand Up @@ -241,3 +241,7 @@ app.UseCors("ReportingRestPolicy");
A full example can be found in the installation folder of Telerik Reporting:

`C:\Program Files (x86)\Progress\Telerik Reporting {{site.suiteversion}}\Examples\CSharp\.NET Core 3.1\ReportingRestServiceCorsDemo\CSharp.Core31.ReportingRestServiceCorsDemo`

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,7 @@ The service can be used from:
* [Windows Forms ReportViewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/windows-forms-application/how-to-use-windows-forms-report-viewer-with-rest-service%})
* [WPF ReportViewer]({%slug telerikreporting/using-reports-in-applications/display-reports-in-applications/wpf-application/how-to-use-wpf-report-viewer-with-rest-service%})
* Any custom client can utilize resources from the service by submitting HTTP requests - [REST API Reference]({%slug telerikreporting/using-reports-in-applications/host-the-report-engine-remotely/telerik-reporting-rest-services/rest-api-reference/overview%}).

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
4 changes: 4 additions & 0 deletions embedding-reports/html5-viewer-telerik-rest-service.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,7 @@ Important cache management-related properties of the IReportServiceConfiguration
When a report is rendered once for a given set of the above requirements, it can be reused for the time specified as `ReportSharingTimeout`. Setting the `ReportSharingTimeout` to `0` (`zero`, default) will cause each client request for a report to produce a new report document instead of reusing an already rendered document.

> When you navigate to reports via [NavigateToReportAction]({%slug telerikreporting/designing-reports/adding-interactivity-to-reports/actions/drillthrough-report-action%}) the Reporting engine always creates a new instance of the target report.
## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})
4 changes: 4 additions & 0 deletions embedding-reports/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,3 +80,7 @@ If you are just starting with Telerik Reporting, look at our [First Steps]({%slu
Wondering about specific report design? You might find helpful suggestions on how to present the data in [Report Structure]({%slug telerikreporting/designing-reports/report-structure/overview%}) section.

Are you into ASP.NET Core? See how to display reports in a .NET Core application for Windows, Linux, and macOS platforms here - [.NET Core Support]({%slug telerikreporting/using-reports-in-applications/dot-net-core-support%}).

## See Also

* [Embedding Telerik Reporting in ASP.NET Core Web Reporting Applications]({%slug asp-net-core-reporting%})

0 comments on commit 7fe5410

Please sign in to comment.