报表控件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 并运行项目。您将看到一个带有指定报告的查看器。

相关推荐
Amumu121382 小时前
Vue3 Composition API(一)
开发语言·javascript·ecmascript
C澒3 小时前
多场景多角色前端架构方案:基于页面协议化与模块标准化的通用能力沉淀
前端·架构·系统架构·前端框架
崔庆才丨静觅3 小时前
稳定好用的 ADSL 拨号代理,就这家了!
前端
江湖有缘3 小时前
Docker部署music-tag-web音乐标签编辑器
前端·docker·编辑器
hzb666663 小时前
unictf2026
开发语言·javascript·安全·web安全·php
恋猫de小郭4 小时前
Flutter Zero 是什么?它的出现有什么意义?为什么你需要了解下?
android·前端·flutter
崔庆才丨静觅10 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby606111 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了11 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅11 小时前
实用免费的 Short URL 短链接 API 对接说明
前端