{"id":13718,"date":"2023-09-28T10:01:53","date_gmt":"2023-09-28T10:01:53","guid":{"rendered":"https:\/\/positiwise.com\/blog\/?p=13718"},"modified":"2023-12-27T09:20:20","modified_gmt":"2023-12-27T09:20:20","slug":"embed-reporting-asp-net-core-web-applications","status":"publish","type":"post","link":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications","title":{"rendered":"A Guide to Embed Reporting in ASP.NET Core Web Applications"},"content":{"rendered":"\n<p><strong class=\"pw-highlight-text-color\"><em>Quick Overview:<\/em><\/strong><br>In the business intelligence domain, viewing and analyzing reports is a significant requirement of an application. It supports the analysts to accurately determine current marketing, sales, accounts, and other data. For ASP.NET Core web applications, providing report viewing functionality is a seamless task. This feature can be effortlessly embedded through numerous tools. But, in this blog, you are going to discover the use of the Terelink package, HTML5 report viewer, and a REST service for it. This article will teach you how to embed reporting in ASP.NET core web applications.<\/p><div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#A_Run-Through_NET_Core_vs_Nodejs\" >A Run-Through: .NET Core vs Node.js<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#NET_Core\" >.NET Core<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Pros_of_using_NET_Core\" >Pros of using .NET Core<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Nodejs\" >Node.js<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#A_Deep_Dive_into_NET_Core_vs_Nodejs\" >A Deep Dive into .NET Core vs. Node.js<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Processing_Approach_and_Performance\" >Processing Approach and Performance<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Security\" >Security<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Scalability\" >Scalability<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Platform_Adaptability\" >Platform Adaptability<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Support_from_Community\" >Support from Community<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Comparison_Table_between_NET_Core_and_Nodejs\" >Comparison Table between .NET Core and Node.js<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\/#Wrapping_Up_on_NET_Core_vs_Nodejs\" >Wrapping Up on .NET Core vs Node.js<\/a><\/li><\/ul><\/nav><\/div>\n\n\n\n\n<h2 class=\"wp-block-heading\">Introduction<\/h2>\n\n\n\n<p>Reports are integral to business intelligence (BI), as they help inefficient data analysis and processing. All the analysts utilize reports for optimizing business operations and improving productivity. To enhance the work of such analysts, it\u2019s essential that displaying reports on screen must be a feature of your enterprise solution.<\/p>\n\n\n\n<p>In an <a href=\"https:\/\/positiwise.com\/blog\/a-guide-to-building-web-apis-with-entity-framework-core-in-net-7\">ASP.NET core web application<\/a>, report viewing can be effortlessly embedded using the Terelink report viewer and REST service. And in this blog, we are going to discuss the complete process for it. So, let&#8217;s start by understanding the two main components of the reporting mechanism.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Components of .NET Web Reporting in ASP.NET Core Web Applications<\/h2>\n\n\n\n<p>You need two primary components for the dotnet report builder feature: the Telerik HTML5 report viewer and the reporting REST service. These two components collaborate to fetch the report from the backend and view it on the screen. So, let&#8217;s have a look into these to understand the background working more thoroughly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">HTML5 Report Viewer<\/h3>\n\n\n\n<p>The primary purpose and responsibility of the HTML5 report viewer is to display the report documents to end-users. The report viewer fetches the document from the backend and uses its jQuery widget to convert the file content into an HTML template.<\/p>\n\n\n\n<p>Following the conversion, it displays the content on the screen, enabling end-users to view the report using their desktop and mobile browser. Some of the most prominent features of the HTML5 report viewer include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>In-built search functions to find a piece of particular information in the report.<\/li>\n\n\n\n<li>Hyperlink interaction for better navigation.<\/li>\n\n\n\n<li>Zoom view of multi-page to efficiently view every content piece.<\/li>\n\n\n\n<li>Custom layout entirely based on HTML5 template.<\/li>\n\n\n\n<li>Support for desktop and mobile browsers.<\/li>\n\n\n\n<li>Webpage scaling for complete and partial web pages.<\/li>\n\n\n\n<li>Ability to utilize the theming mechanism of Kendo UI.<\/li>\n<\/ul>\n\n\n\n<p>Furthermore, to use an HTML5 report viewer, you should ensure that your system checks all the below requirements. Otherwise, you should update your computer system readily.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Telerik Reporting REST service (Running instance is required)<\/li>\n\n\n\n<li>jQuery version 1.9.1 or above<\/li>\n\n\n\n<li>Q3 2015 version of Kendo UI Professional<\/li>\n\n\n\n<li>Browser supporting HTML5<\/li>\n\n\n\n<li>JavaScript supporting HTML5 Report Viewer<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Reporting REST Service<\/h3>\n\n\n\n<p>HTML5 report viewer cannot retrieve the reports itself, as its functionality is limited to displaying only. To manage all other reporting operations, the <a href=\"https:\/\/positiwise.com\/blog\/difference-between-restapi-restful-api\">REST services<\/a> come into action. Through it, the ASP.NET core web application fetches the reports from the database and provides a report viewer over an HTTP connection. The complete process takes place only in three steps, as listed below:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 1:<\/strong> The user requests a report through the ASP.NET application. The user can use any defined parameter for fetching the report, such as its ID or name.<\/li>\n\n\n\n<li><strong>Step 2:<\/strong> The application will pass the parameter to the REST service. Following it, the service will execute a report engine to find the file, render it, and provide it to the HTML5 viewer.<\/li>\n\n\n\n<li><strong>Step 3:<\/strong> The HTML5 report viewer will display the report to the user. In these three steps, the HTML5 report viewer and reporting REST service work in the background.<\/li>\n<\/ul>\n\n\n\n<p>In these three steps, the HTML5 report viewer and reporting REST service work in the background.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Prerequisites To Complete Before Configuring Reporting<\/h2>\n\n\n\n<p>The prerequisites are quite easy to complete for embedding reporting in an ASP.NET Core web application. You must ensure that:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The latest Visual Studio is installed (Minimal 2019 version is required).<\/li>\n\n\n\n<li>The latest .NET Core version is installed (Check for ASP.NET Core Runtime 3.1.32 support).<\/li>\n\n\n\n<li>Complete the HTML5 report viewer requirements.<\/li>\n<\/ul>\n\n\n\n<p>Following the completion of prerequisites, move to the practical part.<\/p>\n\n\n\n<div class=\"wp-block-group border rounded bg-light has-global-padding is-layout-constrained wp-container-core-group-is-layout-a666d811 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--40);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40);padding-left:var(--wp--preset--spacing--40)\">\n<p class=\"has-text-align-center fs-2 text-blue lh-sm has-contrast-color has-text-color\"><strong>Ready to Build an ASP.NET Core Web Applications for Your Organization?<\/strong><\/p>\n\n\n\n<p class=\"has-text-align-center mt-2\">Empower your organization with custom ASP.NET Core Web Applications crafted by our team of 10+ years of experienced .NET developers. Let&#8217;s build excellence together!<\/p>\n\n\n\n<div class=\"wp-block-buttons mt-3 is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-a89b3969 wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link has-base-color has-text-color has-background wp-element-button\" href=\"https:\/\/positiwise.com\/hire\/hire-dot-net-core-developers\" style=\"border-radius:100px;background-color:#ed7923;padding-top:10px;padding-right:30px;padding-bottom:10px;padding-left:30px\"><strong>Hire ASP.NET Core Developers<\/strong><\/a><\/div>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Configure Reporting REST Service in ASP.NET Core Web Application: Complete Process<\/h2>\n\n\n\n<p>In this guide, we&#8217;ll walk you through the entire process of embedding hosting in your ASP.NET Core web application, brought to you by a leading <a href=\"https:\/\/positiwise.com\/hire\/asp-net-core-development-company\">ASP.NET Core Development Company<\/a>.<\/p>\n\n\n\n<p>Before we start with report embedding, create an ASP.NET core web app project using the Visual Studio IDE. If you have already created one, you are good to go. Otherwise, it is quite easy to generate a project through the following procedure:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Open the Visual Studio IDE and go to <strong>File &gt;&gt; New &gt;&gt; Project.<\/strong><\/li>\n\n\n\n<li>From the numerous available project options, choose the <strong>ASP.NET core web application<\/strong> and move <strong>forward<\/strong>.<\/li>\n\n\n\n<li>Choose the framework version. In this tutorial, we are using <strong>.NET Core 3.1<\/strong>.<\/li>\n\n\n\n<li>Finalize all the details and <strong>create a project<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>After creating the project, follow these steps to enable the reporting feature.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Transform Your ASP.NET Core Project in a Few Easy Steps<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 1: <\/strong>Go to the <strong>NuGet package manager<\/strong> to download and install the \u201c<strong><em>Telerik.Reporting.Services.AspNetCore<\/em><\/strong>\u201d package in the existing project. With the installation of this package, you will have some additional dependencies in your project, like \u201c<strong><em>Microsoft.AspNet.Core.Mvc.NewtonsoftJson<\/em><\/strong>\u201d. \u00a0<\/li>\n<\/ul>\n\n\n\n<p>To activate the package and its dependencies in the project, open the Startup.cs file and modify the code as demonstrated below:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>services.AddRazorPages().AddNewtonsoftJson();<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 2:<\/strong> Again, in the <strong><em>Startup.cs<\/em><\/strong> file, add the following code for configuring REST service for reporting.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>services.TryAddSingleton&lt;IReportServiceConfiguration&gt;(\n    sp =&gt; new ReportServiceConfiguration\n    {\n        Storage = new FileStorage(),\n        ReportSourceResolver = new UriReportSourceResolver(\n            System.IO.Path.Combine(\n                sp.GetService&lt;IWebHostEnvironment&gt;().ContentRootPath,\n                \"Reports\"))\n    });<\/code><\/pre>\n\n\n\n<p>The above code consists of three primary parts: Storage, Source Resolver, and Reports folder.<\/p>\n\n\n\n<p>The storage parameter defines the location where internal services of REST service will get saved. In addition, the exact storage location will also save the associated temp files. Further, the ReportSourceResolver enables the service to discover a specific report inside the application folder.<\/p>\n\n\n\n<p>Lastly, it\u2019s the Reports folder. This folder has not been created yet but will be generated in the next step.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 3:<\/strong> <strong><em>Create the Reports folder<\/em><\/strong> inside the root of your ASP.NET core web app project. And after its creation, put the report definition file inside it. You will find the definition in the Telerik Reporting installation folder. However, you can also create a new definition. But, it&#8217;s always recommended to <a href=\"https:\/\/positiwise.com\/hire-asp-net-developers\">hire ASP.NET developers<\/a> for such purposes.<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 4:<\/strong> Open the report definition file and go to the <strong><em>ConfigureServices<\/em><\/strong> method and the following code:<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>services.AddControllers();<\/code><\/pre>\n\n\n\n<p>Further, inside the <strong><em>Configure<\/em><\/strong> method, add the below code block for mapping the controller endpoints.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>app.UseEndpoints(endpoints =&gt;\n{\n    endpoints.MapRazorPages();\n    endpoints.MapControllers();\n});<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 5:<\/strong> Now, you should <strong><em>create a ReportsController class<\/em><\/strong>, which is going to function as the core of the REST service. You only need to follow the below sub-steps:<\/li>\n<\/ul>\n\n\n\n<ol class=\"wp-block-list\" style=\"list-style-type:1\">\n<li>Go to the project&#8217;s root in the <strong><em>Solution Explorer<\/em><\/strong> and create a new folder. Name the folder \u201c<strong><em>Controller.\u201d<\/em><\/strong> You can name it anything, but we are using this name for this tutorial.<\/li>\n\n\n\n<li>Use the right-click on the Controllers folder and choose <strong><em>Add &gt;&gt; Controller<\/em><\/strong> from the menu.<\/li>\n\n\n\n<li>From the further options, <strong><em>choose the API controller<\/em><\/strong> with an empty template.<\/li>\n\n\n\n<li>Click on <strong><em>Add<\/em><\/strong> and then provide a controller\u2019s name. We are using the &#8220;R<strong><em>eportsController.cs<\/em><\/strong>&#8221; name for this practical.<\/li>\n\n\n\n<li>Click on <strong><em>Add<\/em><\/strong>, and it&#8217;s done.<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 6:<\/strong> Open the <strong><em>ReportsController.cs<\/em><\/strong> file and add the code below.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>using Microsoft.AspNetCore.Mvc;\nusing Telerik.Reporting.Services;\nusing Telerik.Reporting.Services.AspNetCore;\n \nnamespace AspNetCoreReportViewerSample.Controllers\n{\n    &#91;Route(\"api\/reports\")]\n    public class ReportsController : ReportsControllerBase\n    {\n        public ReportsController(IReportServiceConfiguration reportServiceConfiguration)\n            : base(reportServiceConfiguration)\n        {\n        }\n    }\n}<\/code><\/pre>\n\n\n\n<p>With the above code, the URL to access the controller will get effortlessly mapped. Now, you have embedded the reporting REST service in your ASP.NET Core web application.<\/p>\n\n\n\n<p>But, the procedure continues, as you need to test and verify its functioning.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Testing and Validating Functionality for Seamless Operations<\/h3>\n\n\n\n<p>To fetch the report using reporting REST service and view it using HTML5 viewer, execute the below process:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 1:<\/strong> Open the <strong><em>_Layout.cshtml<\/em><\/strong> file from the location <strong><em>Pages\/Shared\/_Layout.cshtml<\/em><\/strong>. Once you find the file, add the head element as displayed below:<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;head&gt;\n    ...\n \n    @RenderSection(\"Head\", required: false)\n&lt;\/head&gt;<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 2:<\/strong> Now go to Page\/Index.cshtml file and <strong><em>create a div element<\/em><\/strong>. Ensure that you provide a unique ID to the element.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;div id=\"reportViewer1\" style=\"width:940px; height:1300px\"&gt;\n&lt;\/div&gt;<\/code><\/pre>\n\n\n\n<p>Also, in the head section, provide links for <strong><em>Kendo UI<\/em><\/strong>.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@section Head {\n    &lt;link href=\"https:\/\/kendo.cdn.telerik.com\/2020.1.114\/styles\/kendo.common.min.css\" rel=\"stylesheet\" \/&gt;\n    &lt;link href=\"https:\/\/kendo.cdn.telerik.com\/2020.1.114\/styles\/kendo.default.min.css\" rel=\"stylesheet\" \/&gt;\n}<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 3:<\/strong> Add a link for the JavaScript file associated with the viewer widget. It will help the viewer discover appropriate jQuery dependencies and extend the <strong><em>telerik_ReportViewer<\/em><\/strong> method with the jQuery global project.<\/li>\n<\/ul>\n\n\n\n<p>Your scripts section must look like as below:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>@section Scripts {\n    &lt;script src=\"\/api\/reports\/resources\/js\/telerikReportViewer\"&gt;&lt;\/script&gt;\n \n    &lt;script type=\"text\/javascript\"&gt;\n        $(document).ready(function () {\n            $(\"#reportViewer1\")\n                .telerik_ReportViewer({\n                    serviceUrl: \"api\/reports\",\n                    reportSource: {\n                        report: \"Report Catalog.trdp\"\n                    },\n                    scaleMode: telerikReportViewer.ScaleModes.SPECIFIC,\n                    scale: 1.0\n                });\n        });\n    &lt;\/script&gt;\n}<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 4:<\/strong> Check the final configuration and ensure your complete code resembles the following block.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>@page\n@model IndexModel\n@{\n    ViewData&#91;\"Title\"] = \"Home page\";\n}\n \n@section Head {\n    &lt;link href=\"https:\/\/kendo.cdn.telerik.com\/2020.1.114\/styles\/kendo.common.min.css\" rel=\"stylesheet\" \/&gt;\n    &lt;link href=\"https:\/\/kendo.cdn.telerik.com\/2020.1.114\/styles\/kendo.default.min.css\" rel=\"stylesheet\" \/&gt;\n}\n \n&lt;div class=\"text-center\"&gt;\n    &lt;div id=\"reportViewer1\" style=\"width:940px; height:1300px\"&gt;\n    &lt;\/div&gt;\n&lt;\/div&gt;\n \n@section Scripts {\n    &lt;script src=\"\/api\/reports\/resources\/js\/telerikReportViewer\"&gt;&lt;\/script&gt;\n \n    &lt;script type=\"text\/javascript\"&gt;\n        $(document).ready(function () {\n            $(\"#reportViewer1\")\n                .telerik_ReportViewer({\n                    serviceUrl: \"api\/reports\",\n                    reportSource: {\n                        report: \"Report Catalog.trdp\"\n                    },\n                    scaleMode: telerikReportViewer.ScaleModes.SPECIFIC,\n                    scale: 1.0\n                });\n        });\n    &lt;\/script&gt;\n}<\/code><\/pre>\n\n\n\n<p>All the configuration tasks have been completed at this step; the only thing left is running the application.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Step 5:<\/strong> According to our configuration, the ASP.NET core web application will request the &#8220;<strong><em>Catalog.trdp<\/em><\/strong>&#8221; report. So, press the <strong><em>F5<\/em><\/strong> button to start the application and wait for the output as below.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"990\" height=\"710\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/asp-net-core-report-viewer-sample.png\" alt=\"asp net core report viewer sample\" class=\"wp-image-13723\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/asp-net-core-report-viewer-sample.png 990w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/asp-net-core-report-viewer-sample-300x215.png 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/asp-net-core-report-viewer-sample-768x551.png 768w\" sizes=\"auto, (max-width: 990px) 100vw, 990px\" \/><\/figure>\n\n\n\n<p>If you view the same output, your application works accurately, providing the reporting functionality. If not, then you should check the code and verify the configurations.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Role of ASP.NET Development Company in Embedding Reporting<\/h2>\n\n\n\n<p>Embed reporting in ASP.NET core web applications is a crucial task requiring domain expertise. Suppose a newbie or an inexperienced person tries to configure it. In that case, it can lead to an application crash and vulnerable loopholes. Thus, hiring an ASP.NET core web application developer from a reputed firm is always recommended.<\/p>\n\n\n\n<p>An ASP.NET development company, like Positiwise Software Pvt Ltd, can help you at every step. The all-rounder <a href=\"https:\/\/positiwise.com\/technologies\/dot-net-development\">.NET development services<\/a>, flexible pricing, and 100% transparency will help you seamlessly move forward in your domain. Thus, a development company builds a solid foundation for every component and application.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Additional Alternatives: Best Reporting Tool For ASP NET Core<\/h2>\n\n\n\n<p>Besides the Telerik package that we used in our practical, you can use the following tools. But, before you decide, consult an ASP.NET development company to select an appropriate mechanism per your business requirements.<\/p>\n\n\n\n<p>The top alternatives include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Crystal Reports<\/li>\n\n\n\n<li>SSRS<\/li>\n\n\n\n<li>HTML Reports<\/li>\n\n\n\n<li>ActiveReports<\/li>\n\n\n\n<li>XtraReports<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion on Embed Reporting in ASP.NET Core Web Applications<\/h2>\n\n\n\n<p>Reporting has become an essential feature of an ASP.NET core web application, as most organizations require it for marketing, sales, accounts, and other operations. The most preferred way to embed reporting in ASP.NET core web applications is using the Telerik package with the help of an HTML5 report viewer and the reporting REST service.<\/p>\n\n\n\n<p>The HTML5 view and REST service depend on each other, as one fetches the report, renders it, and displays it. Also, you should utilize a Visual Studio 2019 or above version to embed reporting. Once you understand all the above steps and execute them, your application starts displaying the reports to end-users.<\/p>\n  <div class=\"related-post slider\">\r\n        <div class=\"headline\">Related Posts<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\".Net Core vs. Java \u2013 Which One You Should Use for Your Projects?\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-java-technology\">\r\n\r\n      <img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"800\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\".Net Core vs. Java \u2013 Which One You Should Use for Your Projects?\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1.jpg 1200w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1-300x200.jpg 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1-1024x683.jpg 1024w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1-768x512.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\".Net Core vs. Java \u2013 Which One You Should Use for Your Projects?\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-java-technology\">\r\n        .Net Core vs. Java \u2013 Which One You Should Use for Your Projects?  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Precise Road Map for ASP.NET Developers\" href=\"https:\/\/positiwise.com\/blog\/roadmap-for-asp-dot-net-developers\">\r\n\r\n      <img loading=\"lazy\" decoding=\"async\" width=\"1021\" height=\"621\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"Hire ASP.NET Developers - A Precise Road Map to Employ ASP.NET Developers\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1.jpg 1021w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1-300x182.jpg 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1-768x467.jpg 768w\" sizes=\"auto, (max-width: 1021px) 100vw, 1021px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Precise Road Map for ASP.NET Developers\" href=\"https:\/\/positiwise.com\/blog\/roadmap-for-asp-dot-net-developers\">\r\n        Precise Road Map for ASP.NET Developers  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\".NET Core vs Node.js: The Difference Explained by Web Expert\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\">\r\n\r\n      <img loading=\"lazy\" decoding=\"async\" width=\"1021\" height=\"621\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/NET-Core-VS-Node-js-jpg.webp\" class=\"attachment-full size-full wp-post-image\" alt=\"NET-Core-VS-Node-js\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/NET-Core-VS-Node-js-jpg.webp 1021w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/NET-Core-VS-Node-js-300x182.webp 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/NET-Core-VS-Node-js-768x467.webp 768w\" sizes=\"auto, (max-width: 1021px) 100vw, 1021px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\".NET Core vs Node.js: The Difference Explained by Web Expert\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-node-js\">\r\n        .NET Core vs Node.js: The Difference Explained by Web Expert  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 5px;\r\n      padding: 0px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 2rem !important;\r\n      color: #212529 !important;\r\n          }\r\n\r\n    .related-post .headline {\r\nmargin-top: 0;\r\npadding-left: 1%;\r\n}.related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 0px 0px 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 1rem;\r\n      color: #212529;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 13px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 3,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 3,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: true,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: true,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>\r\n","protected":false},"excerpt":{"rendered":"<p>Quick Overview:In the business intelligence domain, viewing and analyzing reports is a significant requirement of an application. It [&hellip;]<\/p>\n  <div class=\"related-post slider\">\r\n        <div class=\"headline\">Related Posts<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\".Net Core vs. Java \u2013 Which One You Should Use for Your Projects?\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-java-technology\">\r\n\r\n      <img width=\"1200\" height=\"800\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\".Net Core vs. Java \u2013 Which One You Should Use for Your Projects?\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1.jpg 1200w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1-300x200.jpg 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1-1024x683.jpg 1024w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2021\/12\/web-security-partner-1-768x512.jpg 768w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\".Net Core vs. Java \u2013 Which One You Should Use for Your Projects?\" href=\"https:\/\/positiwise.com\/blog\/net-core-vs-java-technology\">\r\n        .Net Core vs. Java \u2013 Which One You Should Use for Your Projects?  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Precise Road Map for ASP.NET Developers\" href=\"https:\/\/positiwise.com\/blog\/roadmap-for-asp-dot-net-developers\">\r\n\r\n      <img width=\"1021\" height=\"621\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"Hire ASP.NET Developers - A Precise Road Map to Employ ASP.NET Developers\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1.jpg 1021w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1-300x182.jpg 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/dealership-1200x800-1-768x467.jpg 768w\" sizes=\"auto, (max-width: 1021px) 100vw, 1021px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Precise Road Map for ASP.NET Developers\" href=\"https:\/\/positiwise.com\/blog\/roadmap-for-asp-dot-net-developers\">\r\n        Precise Road Map for ASP.NET Developers  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"A Descriptive Guide to .NET Framework\" href=\"https:\/\/positiwise.com\/blog\/a-descriptive-guide-to-dot-net-framework\">\r\n\r\n      <img width=\"1021\" height=\"621\" src=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/a-descriptive-guide-to-dot-net-framework.jpg\" class=\"attachment-full size-full wp-post-image\" alt=\"A Descriptive Guide to .NET Framework\" decoding=\"async\" loading=\"lazy\" srcset=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/a-descriptive-guide-to-dot-net-framework.jpg 1021w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/a-descriptive-guide-to-dot-net-framework-300x182.jpg 300w, https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2022\/01\/a-descriptive-guide-to-dot-net-framework-768x467.jpg 768w\" sizes=\"auto, (max-width: 1021px) 100vw, 1021px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"A Descriptive Guide to .NET Framework\" href=\"https:\/\/positiwise.com\/blog\/a-descriptive-guide-to-dot-net-framework\">\r\n        A Descriptive Guide to .NET Framework  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 5px;\r\n      padding: 0px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 2rem !important;\r\n      color: #212529 !important;\r\n          }\r\n\r\n    .related-post .headline {\r\nmargin-top: 0;\r\npadding-left: 1%;\r\n}.related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 0px 0px 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 1rem;\r\n      color: #212529;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 13px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 3,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 3,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: true,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: true,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>\r\n","protected":false},"author":3,"featured_media":13738,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_eb_attr":"","footnotes":""},"categories":[7],"tags":[],"class_list":["post-13718","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dot-net-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>A Guide to Embed Reporting in ASP.NET Core Web Applications<\/title>\n<meta name=\"description\" content=\"Learn to seamlessly integrate and optimize Embed Reporting in ASP.NET Core Web Applications with this comprehensive guide.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A Guide to Embed Reporting in ASP.NET Core Web Applications\" \/>\n<meta property=\"og:description\" content=\"Learn to seamlessly integrate and optimize Embed Reporting in ASP.NET Core Web Applications with this comprehensive guide.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications\" \/>\n<meta property=\"og:site_name\" content=\"Positiwise\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/positiwise\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-28T10:01:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-12-27T09:20:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/embed-reporting-in-asp-dot-net-core-web-application.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1021\" \/>\n\t<meta property=\"og:image:height\" content=\"621\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Parag Mehta\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@positiwise\" \/>\n<meta name=\"twitter:site\" content=\"@positiwise\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Parag Mehta\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications\"},\"author\":{\"name\":\"Parag Mehta\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#\\\/schema\\\/person\\\/b4b3d9970ea94f5914a615f70345353a\"},\"headline\":\"A Guide to Embed Reporting in ASP.NET Core Web Applications\",\"datePublished\":\"2023-09-28T10:01:53+00:00\",\"dateModified\":\"2023-12-27T09:20:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications\"},\"wordCount\":1818,\"publisher\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/embed-reporting-in-asp-dot-net-core-web-application.jpg\",\"articleSection\":[\".NET Development\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2022\",\"copyrightHolder\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications\",\"url\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications\",\"name\":\"A Guide to Embed Reporting in ASP.NET Core Web Applications\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/embed-reporting-in-asp-dot-net-core-web-application.jpg\",\"datePublished\":\"2023-09-28T10:01:53+00:00\",\"dateModified\":\"2023-12-27T09:20:20+00:00\",\"description\":\"Learn to seamlessly integrate and optimize Embed Reporting in ASP.NET Core Web Applications with this comprehensive guide.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#primaryimage\",\"url\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/embed-reporting-in-asp-dot-net-core-web-application.jpg\",\"contentUrl\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/09\\\/embed-reporting-in-asp-dot-net-core-web-application.jpg\",\"width\":1021,\"height\":621,\"caption\":\"Embed Reporting in ASP.NET Core Web Applications\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/embed-reporting-asp-net-core-web-applications#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/positiwise.com\\\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A Guide to Embed Reporting in ASP.NET Core Web Applications\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/\",\"name\":\"Positiwise\",\"description\":\"Providing Full-cycle Software Development Services\",\"publisher\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#organization\"},\"alternateName\":\"Positiwise Software Pvt Ltd\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#organization\",\"name\":\"Positiwise\",\"alternateName\":\"Positiwise Software Pvt Ltd\",\"url\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo.png\",\"contentUrl\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/logo.png\",\"width\":202,\"height\":29,\"caption\":\"Positiwise\"},\"image\":{\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/positiwise\\\/\",\"https:\\\/\\\/x.com\\\/positiwise\",\"https:\\\/\\\/github.com\\\/positiwise\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/positiwise\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/#\\\/schema\\\/person\\\/b4b3d9970ea94f5914a615f70345353a\",\"name\":\"Parag Mehta\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/072ea4a638415a77610a840228d51b8225ad88856ed34d69cbe1fcd638390535?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/072ea4a638415a77610a840228d51b8225ad88856ed34d69cbe1fcd638390535?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/072ea4a638415a77610a840228d51b8225ad88856ed34d69cbe1fcd638390535?s=96&r=g\",\"caption\":\"Parag Mehta\"},\"description\":\"Parag Mehta, the CEO and Founder of Positiwise Software Pvt Ltd has extensive knowledge of the development niche. He is implementing custom strategies to craft highly-appealing and robust applications for its clients and supporting employees to grow and ace the tasks. He is a consistent learner and always provides the best-in-quality solutions, accelerating productivity.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/paragcmehta\"],\"url\":\"https:\\\/\\\/positiwise.com\\\/blog\\\/author\\\/parag-mehta\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"A Guide to Embed Reporting in ASP.NET Core Web Applications","description":"Learn to seamlessly integrate and optimize Embed Reporting in ASP.NET Core Web Applications with this comprehensive guide.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications","og_locale":"en_US","og_type":"article","og_title":"A Guide to Embed Reporting in ASP.NET Core Web Applications","og_description":"Learn to seamlessly integrate and optimize Embed Reporting in ASP.NET Core Web Applications with this comprehensive guide.","og_url":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications","og_site_name":"Positiwise","article_publisher":"https:\/\/www.facebook.com\/positiwise\/","article_published_time":"2023-09-28T10:01:53+00:00","article_modified_time":"2023-12-27T09:20:20+00:00","og_image":[{"width":1021,"height":621,"url":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/embed-reporting-in-asp-dot-net-core-web-application.jpg","type":"image\/jpeg"}],"author":"Parag Mehta","twitter_card":"summary_large_image","twitter_creator":"@positiwise","twitter_site":"@positiwise","twitter_misc":{"Written by":"Parag Mehta","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#article","isPartOf":{"@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications"},"author":{"name":"Parag Mehta","@id":"https:\/\/positiwise.com\/blog\/#\/schema\/person\/b4b3d9970ea94f5914a615f70345353a"},"headline":"A Guide to Embed Reporting in ASP.NET Core Web Applications","datePublished":"2023-09-28T10:01:53+00:00","dateModified":"2023-12-27T09:20:20+00:00","mainEntityOfPage":{"@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications"},"wordCount":1818,"publisher":{"@id":"https:\/\/positiwise.com\/blog\/#organization"},"image":{"@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#primaryimage"},"thumbnailUrl":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/embed-reporting-in-asp-dot-net-core-web-application.jpg","articleSection":[".NET Development"],"inLanguage":"en-US","copyrightYear":"2022","copyrightHolder":{"@id":"https:\/\/positiwise.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications","url":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications","name":"A Guide to Embed Reporting in ASP.NET Core Web Applications","isPartOf":{"@id":"https:\/\/positiwise.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#primaryimage"},"image":{"@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#primaryimage"},"thumbnailUrl":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/embed-reporting-in-asp-dot-net-core-web-application.jpg","datePublished":"2023-09-28T10:01:53+00:00","dateModified":"2023-12-27T09:20:20+00:00","description":"Learn to seamlessly integrate and optimize Embed Reporting in ASP.NET Core Web Applications with this comprehensive guide.","breadcrumb":{"@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#primaryimage","url":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/embed-reporting-in-asp-dot-net-core-web-application.jpg","contentUrl":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/09\/embed-reporting-in-asp-dot-net-core-web-application.jpg","width":1021,"height":621,"caption":"Embed Reporting in ASP.NET Core Web Applications"},{"@type":"BreadcrumbList","@id":"https:\/\/positiwise.com\/blog\/embed-reporting-asp-net-core-web-applications#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/positiwise.com\/blog"},{"@type":"ListItem","position":2,"name":"A Guide to Embed Reporting in ASP.NET Core Web Applications"}]},{"@type":"WebSite","@id":"https:\/\/positiwise.com\/blog\/#website","url":"https:\/\/positiwise.com\/blog\/","name":"Positiwise","description":"Providing Full-cycle Software Development Services","publisher":{"@id":"https:\/\/positiwise.com\/blog\/#organization"},"alternateName":"Positiwise Software Pvt Ltd","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/positiwise.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/positiwise.com\/blog\/#organization","name":"Positiwise","alternateName":"Positiwise Software Pvt Ltd","url":"https:\/\/positiwise.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/positiwise.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/07\/logo.png","contentUrl":"https:\/\/positiwise.com\/blog\/wp-content\/uploads\/2023\/07\/logo.png","width":202,"height":29,"caption":"Positiwise"},"image":{"@id":"https:\/\/positiwise.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/positiwise\/","https:\/\/x.com\/positiwise","https:\/\/github.com\/positiwise","https:\/\/www.linkedin.com\/company\/positiwise"]},{"@type":"Person","@id":"https:\/\/positiwise.com\/blog\/#\/schema\/person\/b4b3d9970ea94f5914a615f70345353a","name":"Parag Mehta","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/072ea4a638415a77610a840228d51b8225ad88856ed34d69cbe1fcd638390535?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/072ea4a638415a77610a840228d51b8225ad88856ed34d69cbe1fcd638390535?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/072ea4a638415a77610a840228d51b8225ad88856ed34d69cbe1fcd638390535?s=96&r=g","caption":"Parag Mehta"},"description":"Parag Mehta, the CEO and Founder of Positiwise Software Pvt Ltd has extensive knowledge of the development niche. He is implementing custom strategies to craft highly-appealing and robust applications for its clients and supporting employees to grow and ace the tasks. He is a consistent learner and always provides the best-in-quality solutions, accelerating productivity.","sameAs":["https:\/\/www.linkedin.com\/in\/paragcmehta"],"url":"https:\/\/positiwise.com\/blog\/author\/parag-mehta"}]}},"_links":{"self":[{"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/posts\/13718","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/comments?post=13718"}],"version-history":[{"count":19,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/posts\/13718\/revisions"}],"predecessor-version":[{"id":14655,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/posts\/13718\/revisions\/14655"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/media\/13738"}],"wp:attachment":[{"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/media?parent=13718"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/categories?post=13718"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/positiwise.com\/blog\/wp-json\/wp\/v2\/tags?post=13718"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}