I’m trying to build a net5 (so .net core) web site on azure dev ops. It consists of two projects, Utilities and Utilities.Shared, both of which have references to AR15. We’re using the core reporting engine and the PDF export module and creating page reports.
Following what I’ve read here and in https://www.grapecity.com/forums/ar-dev/activereports-15---licensi#looks-like-this-requires-a I created gclicx files for the two projects using :
gclm "e88c1aa3-2781-44bb-b639-765c9ef6d15c" -lc ./.gclicx w3wp.Utilities.dll"
gclm "e88c1aa3-2781-44bb-b639-765c9ef6d15c" -lc ./.gclicx w3wp.Utilities.Service.dll"
I copied each of these in turn to the root of each project directory, and set them as an embedded resource. I checked the projects in, ran the pipeline and ran a release. This successfully deployed the latest site to our intranet server, but when I try to access a report I get the error:
System.ComponentModel.LicenseException: This application will be terminated because it was built without a license for PageReport.
at GrapeCity.ActiveReports.Document.PageDocument.Render(IRenderingExtension renderingExtension, StreamProvider streams, NameValueCollection settings, Boolean forceDataRefresh, Boolean forceParameterDataRefresh, CancellationToken token)
at GrapeCity.ActiveReports.Document.PageDocument.Render(IRenderingExtension renderingExtension, StreamProvider streams, NameValueCollection settings, Boolean forceDataRefresh)
at GrapeCity.ActiveReports.Document.PageDocument.Render(IRenderingExtension renderingExtension, StreamProvider streams, NameValueCollection settings)
at GrapeCity.ActiveReports.Document.PageDocument.Render(IRenderingExtension renderingExtension, StreamProvider streams)
It’s failing in the following code:
var repdoc = report.Document;
var pdfRenderingExtension = new GrapeCity.ActiveReports.Export.Pdf.Page.PdfRenderingExtension();
var prov = new GrapeCity.ActiveReports.Rendering.IO.MemoryStreamProvider();
repdoc.Render(pdfRenderingExtension, prov);
var ms = prov.GetPrimaryStream().OpenStream();
return ms as System.IO.MemoryStream;
I’ve tried this both with and without the DisableGclm property group, but get the same result each time
Also, with the DisableGclm property group configured I get the same error when running from VS2019, presumably because I’m not running the site through iisexpress rather than w3wp - is it possible to embed licenses for both, or is there a better way to use a different option during development compared to during the build pipeline?
Any suggestions would be most welcome!