Angular10中如何使用DevExpress报表设计器和报表查看器
How to use DevExpress report designer and report viewer in Angular 10
我在前端使用 Angular 10,在后端使用带有存储库模式的 .net 核心 webAPI。我正在尝试使用 DevExpress(v20.1) 报告。但我无法弄清楚如何做到这一点。我正在搜索它一个星期但没有结果。 This page and this 页面对此进行了解释。但我不知道如何配置这部分代码;
public class ReportDesignerController : Controller {
//...
public ActionResult GetReportDesignerModel(string reportUrl) {
string modelJsonScript =
new ReportDesignerClientSideModelGenerator(HttpContext.RequestServices)
.GetJsonModelScript(
reportUrl,
GetAvailableDataSources(), //this metod implemented
"DXXRD",
"DXXRDV",
"DXXQB"
);
return Content(modelJsonScript, "application/json");
}
}
谁能告诉我如何正确配置“DXXRD”、“DXXRDV”、“DXXRDV”。我没有使用 mvc,所以当我用这个替换代码时;
new ReportDesignerClientSideModelGenerator()
.GetJsonModelScript(
reportUrl,
GetAvailableDataSources(),
"ReportDesigner/Invoke",
"WebDocumentViewer/Invoke",
"QueryBuilder/Invoke" .
);
我必须使用 MVC 才能调用这些控制器和视图。但我没有使用 mvc。在我现在所处的位置,我开始认为如果没有 MVC,我将无法实现这一目标。所以;
- 是否可以像我的项目一样在项目中使用 DevExpress 报告?
- 如果是怎么办?
DevExpress 报告组件使用 ASP.NET MVC 核心控制器处理来自 Report Designer, Document Viewer, and Query Builder 使用预定义路由的请求:
因此必须在您的应用中注册 MVC 中间件和 ASP.NET 核心 MVC 报告控制器。您可以通过在应用程序启动时添加以下代码来继续:
using DevExpress.AspNetCore;
using DevExpress.AspNetCore.Reporting;
//...
public class Startup {
//...
public void ConfigureServices(IServiceCollection services) {
// Register reporting services in an application's dependency injection container.
services.AddDevExpressControls();
// Use the AddMvcCore (or AddMvc) method to add MVC services.
services.AddMvcCore();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env) {
// ...
app.UseStaticFiles();
// Initialize reporting services.
app.UseDevExpressControls();
// ...
}
}
您可以在文档中找到更多信息:
我在前端使用 Angular 10,在后端使用带有存储库模式的 .net 核心 webAPI。我正在尝试使用 DevExpress(v20.1) 报告。但我无法弄清楚如何做到这一点。我正在搜索它一个星期但没有结果。 This page and this 页面对此进行了解释。但我不知道如何配置这部分代码;
public class ReportDesignerController : Controller {
//...
public ActionResult GetReportDesignerModel(string reportUrl) {
string modelJsonScript =
new ReportDesignerClientSideModelGenerator(HttpContext.RequestServices)
.GetJsonModelScript(
reportUrl,
GetAvailableDataSources(), //this metod implemented
"DXXRD",
"DXXRDV",
"DXXQB"
);
return Content(modelJsonScript, "application/json");
}
}
谁能告诉我如何正确配置“DXXRD”、“DXXRDV”、“DXXRDV”。我没有使用 mvc,所以当我用这个替换代码时;
new ReportDesignerClientSideModelGenerator()
.GetJsonModelScript(
reportUrl,
GetAvailableDataSources(),
"ReportDesigner/Invoke",
"WebDocumentViewer/Invoke",
"QueryBuilder/Invoke" .
);
我必须使用 MVC 才能调用这些控制器和视图。但我没有使用 mvc。在我现在所处的位置,我开始认为如果没有 MVC,我将无法实现这一目标。所以;
- 是否可以像我的项目一样在项目中使用 DevExpress 报告?
- 如果是怎么办?
DevExpress 报告组件使用 ASP.NET MVC 核心控制器处理来自 Report Designer, Document Viewer, and Query Builder 使用预定义路由的请求:
因此必须在您的应用中注册 MVC 中间件和 ASP.NET 核心 MVC 报告控制器。您可以通过在应用程序启动时添加以下代码来继续:
using DevExpress.AspNetCore;
using DevExpress.AspNetCore.Reporting;
//...
public class Startup {
//...
public void ConfigureServices(IServiceCollection services) {
// Register reporting services in an application's dependency injection container.
services.AddDevExpressControls();
// Use the AddMvcCore (or AddMvc) method to add MVC services.
services.AddMvcCore();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env) {
// ...
app.UseStaticFiles();
// Initialize reporting services.
app.UseDevExpressControls();
// ...
}
}
您可以在文档中找到更多信息: