ASP.NET Core SSRS查看器
创始人
2024-09-15 12:30:22
0

要实现ASP.NET Core SSRS查看器,可以按照以下步骤进行:

  1. 首先,确保已安装Microsoft.ReportingServices.ReportViewerControl.WebForms包。可以使用NuGet包管理器或手动下载并添加到项目中。

  2. 在Startup.cs文件中的ConfigureServices方法中,添加以下代码以注册ReportViewerControl服务:

services.AddMvc()
    .AddRazorPagesOptions(options =>
    {
        options.Conventions.AddPageRoute("/ReportViewer", "/ReportViewer"); // 路由配置
    });
services.AddSession();
services.AddHttpContextAccessor();
services.AddAntiforgery(options => options.HeaderName = "X-CSRF-TOKEN");

services.AddTransient();
  1. 创建一个名为"ReportViewer.cshtml"的视图文件,包含以下代码:
@model MyProject.Models.ReportViewerModel

@{
    ViewData["Title"] = "Report Viewer";
    Layout = null;
}

@ViewData["Title"]


@if (Model != null && Model.ReportPath != null && Model.Parameters != null) {
@foreach (var parameter in Model.Parameters) { }
}
@section Scripts { }
  1. 创建一个名为"ReportViewerModel.cs"的模型文件,包含以下代码:
public class ReportViewerModel
{
    public string ReportPath { get; set; }
    public Dictionary Parameters { get; set; }
}
  1. 创建一个名为"ReportViewerController.cs"的控制器文件,包含以下代码:
public class ReportViewerController : Controller
{
    private readonly IReportViewerProvider _reportViewerProvider;

    public ReportViewerController(IReportViewerProvider reportViewerProvider)
    {
        _reportViewerProvider = reportViewerProvider;
    }

    public IActionResult Index()
    {
        return View();
    }

    [HttpPost]
    public IActionResult Index(string reportPath, string parameters)
    {
        var model = new ReportViewerModel
        {
            ReportPath = reportPath,
            Parameters = JsonConvert.DeserializeObject>(parameters)
        };

        return PartialView("_ReportViewerPartial", model);
    }

    public IActionResult ExportToPdf(string reportPath, string parameters)
    {
        var model = new ReportViewerModel
        {
            ReportPath = reportPath,
            Parameters = JsonConvert.DeserializeObject>(parameters)
        };

        var pdfBytes = _reportViewerProvider.ExportToPdf(model);

        return File(pdfBytes, "application/pdf", "Report.pdf");
    }
}
  1. 最后,创建一个名为"ReportViewerProvider.cs"的服务文件,包含以下代码:
public class

相关内容

热门资讯

透视真的(wpk俱乐部)aap... 透视真的(wpk俱乐部)aapoker有网页版吗(详细辅助玩家教你)最初是真的有挂;辅助插件是一个在...
透视好友(微扑克ai辅助)轰趴... 透视好友(微扑克ai辅助)轰趴大菠萝怎么提高胜率(详细辅助细节揭秘)起初真的有挂,亲,有的,ai轻松...
微扑克有辅助挂!aapoker... 微扑克有辅助挂!aapoker辅助,(AAPOKeR)起初真的有挂(详细辅助黑科技教程);原来确实真...
透视教程(微扑克ai辅助工具)... 透视教程(微扑克ai辅助工具)德扑之星隐藏功能(详细辅助透明挂教程)固有真的是有挂;一、AI软件牌型...
aapoker猫腻!wpk微扑... 《aapoker猫腻软件透明挂》是一款多人竞技的aapoker猫腻辅助透视游戏,你将微扑克对手来到同...
微扑克辅助软件!鱼扑克app ... 微扑克辅助软件!鱼扑克app ai,(wepokE)一贯存在有挂(详细辅助攻略教程);支持2-10人...
透视辅助(德州微扑克辅助)欢乐... 透视辅助(德州微扑克辅助)欢乐棋牌有没有挂(详细辅助新版2025教程)往昔真的有挂;是一种具有地方特...
透视游戏(德扑之星ai代打)g... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加Q群【1067239143】很多玩家在这款游戏中打...
德扑ai智能机器人!cloud... 德扑ai智能机器人!cloudpoker云扑克,(AAPOKeR)确实是真的有挂(详细辅助爆料教程)...
透视软件(aapoker外挂)... 透视软件(aapoker外挂)菠萝德州偷偷看功能(详细辅助必备教程)都是是真的有挂;无聊就玩这款真的...