报表控件stimulsoft操作:使用 Angular 应用程序的报告查看器组件

Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于创建报表和仪表板的通用工具集。该产品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他环境的完整工具集。无需比较产品功能,Stimulsoft Ultimate包含了所有内容!

Stimulsoft Reports 最新版下载

介绍

报告和仪表板查看器是用于查看文档的专用组件。它完全可定制、速度快、用户友好,提供多种功能。为了确保无缝集成到项目中,我们为应用程序的外观和功能提供了多种主题和自定义选项。

入门

打开 Visual Studio 并转到文件 菜单。选择新建 ,然后选择项目 。接下来,选择ASP.NET Core Web 应用程序 并单击下一步

现在,指定项目名称、位置和解决方案名称(例如AngularViewer ),然后单击创建

继续选择平台:在此示例中,选择 .NET 8 或更高版本。确保禁用配置 HTTPS 选项,然后单击创建

安装 NuGet 包

您可以联系慧都在线客服,安装Stimulsoft.Reports.Angular.NetCore NuGet 包:

  • 在项目的上下文菜单中,选择管理 NuGet 包
  • 选择一个元素并指定包版本;
  • 单击**"安装"**。

接下来,您需要按照以下步骤将ViewerController 添加到Controllers文件夹:

  • 打开Controllers 文件夹的上下文菜单并选择添加项目
  • 选择控制器... 并将控制器类型设置为MVC 控制器 -- 空
  • 单击添加 并输入控制器名称,例如ViewerController
  • 再次单击**"添加" 。**

接下来,继续处理报告:在项目中创建一个Reports文件夹,创建一个模板,例如 MasterDetail.mrt ,并在 ViewerController.cs 中插入以下代码:
ViewController.cs

复制代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Stimulsoft.Report;
using Stimulsoft.Report.Angular;
using Stimulsoft.Report.Web;

namespace AngularViewer.Controllers
{
    [Controller]
    public class ViewerController : Controller
    {
        static ViewerController()
        {
            // How to Activate
            //Stimulsoft.Base.StiLicense.Key = "6vJhGtLLLz2GNviWmUTrhSqnO...";
            //Stimulsoft.Base.StiLicense.LoadFromFile("license.key");
            //Stimulsoft.Base.StiLicense.LoadFromStream(stream);
        }

        [HttpPost]
        public IActionResult InitViewer()
        {
            var requestParams = StiAngularViewer.GetRequestParams(this);

            var options = new StiAngularViewerOptions();
            options.Actions.GetReport = "GetReport";
            options.Actions.ViewerEvent = "ViewerEvent";
            options.Appearance.ScrollbarsMode = true;

            return StiAngularViewer.ViewerDataResult(requestParams, options);
        }

        [HttpPost]
        public IActionResult GetReport()
        {
            var report = StiReport.CreateNewReport();
            var path = StiAngularHelper.MapPath(this, $"Reports/MasterDetail.mrt");
            report.Load(path);

            return StiAngularViewer.GetReportResult(this, report);
        }

        [HttpPost]
        public IActionResult ViewerEvent()
        {
            return StiAngularViewer.ViewerEventResult(this);
        }
    }
}

此外,您还应通过启用 CORS 策略和定义 Angular 的回退机制来配置 .NET 服务器。这应在Program.cs 文件中完成**。**

Program.cs

复制代码
using Microsoft.AspNetCore.Builder;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddControllersWithViews();
builder.Services.AddCors(options =>
{
    options.AddDefaultPolicy(policy =>
    {
        policy.AllowAnyOrigin().AllowAnyHeader().AllowAnyMethod();
    });
});

var app = builder.Build();

if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
}

app.UseDefaultFiles();
app.UseStaticFiles();

app.UseRouting();
app.UseCors();
app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

app.Use(async (context, next) =>
{
    await next();
    if (context.Response.StatusCode == 404 && !context.Request.Path.Value.StartsWith("/api"))
    {
        context.Request.Path = "/index.html";
        await next();
    }
});

app.Run();

接下来,在文件资源管理器 中打开项目文件夹,并使用npm 安装必要的 Angular-client 组件。

控制台

复制代码
npm install stimulsoft-viewer-angular

关闭控制台,删除ClientApp 文件夹,重新打开控制台,输入以下命令:

Console

复制代码
ng new ClientApp

选择CSS 格式,按Enter ,关闭控制台,然后导航到ClientApp 文件夹。

再次打开控制台并安装stimulsoft-viewer-angular :

控制台

复制代码
npm install stimulsoft-viewer-angular

关闭控制台。在文本编辑器中打开目录" ...ClientApp\src\app\ "中的 app.module.ts 文件并添加StimulsoftViewerModule 。然后将以下代码插入app.module.tsapp.module.ts

复制代码
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { StimulsoftViewerModule } from 'stimulsoft-viewer-angular';
import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    StimulsoftViewerModule,
    HttpClientModule,
    BrowserAnimationsModule,
    FormsModule,
  ],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

在文本编辑器中打开目录" ...ClientApp\src\app\ "中的 app.component.html 文件并添加AppComponent 。然后将以下代码插入app.component.htmlapp.component.html

复制代码
<stimulsoft-viewer-angular
  [requestUrl]="'http://localhost:5151/Viewer/{action}'"
  [action]="'InitViewer'"
  [height]="'100vh'"
></stimulsoft-viewer-angular>

转到 Visual Studio 并运行项目。您将看到一个带有指定报告的查看器。

相关推荐
CodeSheep3 分钟前
小米汽车这薪资是认真的吗?
前端·后端·程序员
白白李媛媛8 分钟前
上传Vue3+vite+Ts组件到npm官方库保姆级教程
前端·arcgis·npm
晴殇i16 分钟前
前端内容保护:如何有效防止用户复制页面内容?
前端·javascript·css
程序猿阿伟21 分钟前
《声音的变形记:Web Audio API的实时特效法则》
开发语言·前端·php
凌览24 分钟前
有了 25k Star 的MediaCrawler爬虫库加持,三分钟搞定某红书、某音等平台爬取!
前端·后端·python
万少26 分钟前
2-自然壁纸实战教程-AGC 新建项目
前端·harmonyos
满分观察网友z38 分钟前
别小看这个滑动条!从性能灾难到用户挚爱的 uni-app Slider 踩坑实录
前端
满分观察网友z40 分钟前
别再裸写<textarea>了!一个“小”功能,我用上了它几乎所有API
前端
bemyrunningdog42 分钟前
二进制权限控制方案
javascript·react.js·ecmascript
西西木科技丨Shopify开发机构1 小时前
如何在 Shopify 中建立重定向
前端·html