@AgaveJoe Their is nothing wrong with the design at all and is in fact used by NopComerce please don't comment when You don't understand what trying to receive.
You can gain access Its very standard practise to use a Razor Page in this way in allot of commercial software.
I have solved my own issue by using
var serviceProvider = Context.RequestServices.GetRequiredService<ILocalizationService>();
So don't need the criticism thanks
Your design does not work well with ASP.NET Core DI. Derive an implementation from CellaRazorPage, use constructor injection to resolve the service, then pass the service to the abstract class which is a little clunky. Is there some reason why you can't follow a standard service patterns and use an interface rather than an abstract class?