Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sonrai-llc/extrs
extRS is a .NET class library for extending the capabilities of SQL Server Reporting Services, among other things.
https://github.com/sonrai-llc/extrs
asp-net-core c-sharp dotnet rdl sql-server ssrs ssrs-dashboards ssrs-portal ssrs-reports
Last synced: about 1 month ago
JSON representation
extRS is a .NET class library for extending the capabilities of SQL Server Reporting Services, among other things.
- Host: GitHub
- URL: https://github.com/sonrai-llc/extrs
- Owner: sonrai-LLC
- License: mit
- Created: 2023-05-26T03:34:48.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-02T03:54:52.000Z (about 1 month ago)
- Last Synced: 2025-01-02T04:19:50.277Z (about 1 month ago)
- Topics: asp-net-core, c-sharp, dotnet, rdl, sql-server, ssrs, ssrs-dashboards, ssrs-portal, ssrs-reports
- Language: TSQL
- Homepage: https://extrs.net
- Size: 35.7 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: License.md
Awesome Lists containing this project
README
# extRS
extRS is a .NET class library for extending the capabilities of Reporting Services, among other things. With extRS, (pronounced "extras"), common public API endpoints and SDK clients are consolidated into a utility .dll containing features that can compliment your .NET development. extRS also contains a simplified interface to the SSRS v2 API for programmatically managing SSRS catalog item types (CatalogItem, Report, DataSource, DataSet, etc.).SSRS ain't dead- it's just a niche tool that hasn't fully realized its potential- yet. 🤷♂️
Here is an implementation of extRS in the form of an SSRS client (extRS.Portal.csproj) that exposes some of the default SSRS Portal feature set: https://extrs.net
# Requirements
This plug-in works as a drop-in Nuget package for .NET projects as well an SSRS Custom Assembly as described by Microsoft here: https://docs.microsoft.com/en-us/sql/reporting-services/custom-assemblies/using-custom-assemblies-with-reports?view=sql-server-ver15# Contents
This package includes the following components:
- Sonrai.ExtRS.dll# Examples
```
[TestInitialize]
public async Task InitializeTests()
{
httpClient = new HttpClient();
SSRSConnection connection = new SSRSConnection("localhost", "extRSAuth",
AuthenticationType.ExtRSAuth);
connection.SqlAuthCookie = await SSRSService.GetSqlAuthCookie(httpClient,
connection.Administrator, "", connection.ServerName);
ssrs = new SSRSService(connection);
}[TestMethod]
public async Task CreateGetDeleteReportSucceeds()
{
string content = ssrsReportItemJsonString; // ie: { "@odata.type": "#Model.Report", "id":...var postResp = await ssrs.CallApi("POST", "Reports", "{" + content + "}");
Assert.IsTrue(postResp.IsSuccessStatusCode);
var getResponse = await ssrs.CallApi("GET", postResp.Headers.Location.Segments[4]);
Assert.IsTrue(getResponse.IsSuccessStatusCode);var deleteResp = await ssrs.CallApi("DELETE", postResp.Headers.Location.Segments[4]);
Assert.IsTrue(deleteResp.IsSuccessStatusCode);
}
public SSRSService(SSRSConnection connection)
{
conn = connection;
client = new HttpClient();
cookieContainer.Add(new Cookie("sqlAuthCookie", conn.SqlAuthCookie, "/", "localhost"));
serverUrl = string.Format("https://{0}/reports/api/v2.0/", conn.ServerName);
}
```# Related SSRS Tools
- [extRSAuth](https://github.com/sonrai-LLC/extRSAuth) for enabling further extension of the SSRS Microsoft Custom Security Sample.