11

I'm looking for a way to render a Blazor component into an HTML string, so that I'll be able to use it as a templating engine to create and send emails in my web application. Ideas?

tocqueville
  • 4,111
  • 1
  • 34
  • 48

1 Answers1

7

Yes, you can use the test library provided by Steve Sanderson and adapt it to your needs.
This article explains how to use it : Introduction to Blazor Component Testing .
The library can be use to generate the HTML of a component.

exemple :

var host = new TestHost();
var component = host.AddComponent<YourComponent>();
var html = component.GetMarkup();

And you can inject services you need.

host.ConfigureServices(services => 
{
   service.AddSingleton<MyService>();  
});
agua from mars
  • 12,886
  • 4
  • 47
  • 56