I don't know. There is likely a way how to get html string from the razor page which you can afterwards easily convert into pdf using jsreport.
Unfortunately I am too busy to investigate this and I never used razor pages before.
If you find out how to get the html string form the razor page, you can use this code to convert it to the pdf.
var rs = new LocalReporting().UseBinary(JsReportBinary.GetBinary()).AsUtility().Create();
var report = await rs.RenderAsync(new RenderRequest()
{
Template = new Template()
{
Recipe = Recipe.PhantomPdf,
Engine = Engine.None,
Content = "The html you get from the razor page"
}
});