using System.Threading.Tasks;
public static void Main()
Test().GetAwaiter().GetResult();
public static async Task Test()
var transform = new XslCompiledTransform();
using var reader = XmlReader.Create(new StringReader(@"
<xsl:stylesheet version=""1.0"" xmlns:xsl=""http://www.w3.org/1999/XSL/Transform"">
<xsl:output method=""html"" indent=""yes"" doctype-system=""html""/>
<xsl:template match=""/"">
var settings = transform.OutputSettings.Clone();
settings.CloseOutput = false;
var method = settings.OutputMethod;
using var stream = new MemoryStream();
using (var writer = XmlWriter.Create(stream, settings))
await writer.WriteStartDocumentAsync();
await writer.WriteStartElementAsync(null, "foo", null);
await writer.WriteEndElementAsync();
await writer.WriteEndDocumentAsync();
var content = new StreamReader(stream).ReadToEnd();