NeoReports.Core
2.0.0
dotnet add package NeoReports.Core --version 2.0.0
NuGet\Install-Package NeoReports.Core -Version 2.0.0
<PackageReference Include="NeoReports.Core" Version="2.0.0" />
<PackageVersion Include="NeoReports.Core" Version="2.0.0" />
<PackageReference Include="NeoReports.Core" />
paket add NeoReports.Core --version 2.0.0
#r "nuget: NeoReports.Core, 2.0.0"
#:package NeoReports.Core@2.0.0
#addin nuget:?package=NeoReports.Core&version=2.0.0
#tool nuget:?package=NeoReports.Core&version=2.0.0
NeoReports.Core
The core engine of NeoReports: the fluent
ReportBuilder<TRow>, report registry and DI (AddReport<TRow>), the batch pipeline with a
compiled T → object?[] projection at the writer edge, Polly v8 resilience, and the
IFailureStrategy (abort / skip-and-log) with escalation thresholds.
Add a source, a format and a destination package alongside this one to build a working report.
Quick start
using Microsoft.Extensions.DependencyInjection;
using NeoReports.Core.DependencyInjection;
using NeoReports.Core.Pipeline;
using NeoReports.Destinations.Local;
using NeoReports.Sources.Sql;
using static NeoReports.Core.Building.ReportColumns;
using static NeoReports.Formats.Csv.Format;
public sealed record Sale(long Id, string Customer, decimal Amount, DateTime Date);
var services = new ServiceCollection();
services.AddLogging();
services.AddReport<Sale>("monthly-sales", b => b
.From(Source.Sql(connectionString,
"SELECT Id, Customer, Amount, Date FROM Sales " +
"WHERE (@cursor IS NULL OR Id > @cursor) ORDER BY Id")
.Keyset<Sale, long>(v => v.Id, pageSize: 1000))
.Filter(v => v.Amount > 0)
.Columns(
Col<Sale, long>(v => v.Id, "Sale ID"),
Col<Sale, string>(v => v.Customer, "Customer"),
Col<Sale, decimal>(v => v.Amount, "Amount", format: "C2", culture: "pt-BR"),
Col<Sale, DateTime>(v => v.Date, "Sale Date", format: "yyyy-MM-dd"))
.To(Csv(o => o.Delimiter(';')))
.UploadTo(Destination.Local("./out/{name}-{date:yyyy-MM-dd}.{ext}")));
var provider = services.BuildServiceProvider();
var result = await provider.GetRequiredService<IReportRunner>().RunAsync("monthly-sales");
License
MIT © NeoReports Contributors
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- Cronos (>= 0.13.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- NeoReports.Abstractions (>= 2.0.0)
- Polly.Core (>= 8.7.0)
-
net9.0
- Cronos (>= 0.13.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.10)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.10)
- NeoReports.Abstractions (>= 2.0.0)
- Polly.Core (>= 8.7.0)
NuGet packages (32)
Showing the top 5 NuGet packages that depend on NeoReports.Core:
| Package | Downloads |
|---|---|
|
NeoReports.Jobs.Hangfire
Hangfire single-server job backend for NeoReports. |
|
|
NeoReports.Jobs
Job execution for NeoReports: worker, in-memory store/scheduler, no-op checkpoint. |
|
|
NeoReports.Destinations.Local
Local filesystem destination for NeoReports. |
|
|
NeoReports.Destinations.S3
Amazon S3 destination for NeoReports. |
|
|
NeoReports.AspNetCore
ASP.NET Core endpoints to trigger and manage NeoReports reports and jobs. |
GitHub repositories
This package is not used by any popular GitHub repositories.