Include utf-8 encoding.

This commit is contained in:
Cody 2023-04-27 16:21:14 -07:00 committed by GitHub
parent d81fbe4585
commit 8beaeabf09
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -87,17 +87,24 @@ namespace Oqtane.Pages
} }
// write XML // write XML
XmlWriterSettings settings = new XmlWriterSettings(); var encoding = new UTF8Encoding(false); // Set to false to remove BOM
settings.Indent = true; var xmlDeclaration = new XDeclaration("1.0", encoding.WebName, null);
settings.IndentChars = (" "); var settings = new XmlWriterSettings
settings.CloseOutput = true; {
settings.OmitXmlDeclaration = true; Indent = true,
settings.WriteEndDocumentOnClose = true; IndentChars = " ",
CloseOutput = true,
Encoding = encoding,
OmitXmlDeclaration = true,
WriteEndDocumentOnClose = true,
NewLineChars = Environment.NewLine
};
StringBuilder builder = new StringBuilder(); var builder = new StringBuilder();
using (XmlWriter writer = XmlWriter.Create(builder, settings)) using (var writer = XmlWriter.Create(builder, settings))
{ {
writer.WriteStartDocument(); writer.WriteStartDocument();
writer.WriteRaw(Environment.NewLine); // Add a newline here
writer.WriteStartElement("urlset", "http://www.sitemaps.org/schemas/sitemap/0.9"); writer.WriteStartElement("urlset", "http://www.sitemaps.org/schemas/sitemap/0.9");
foreach (var url in sitemap) foreach (var url in sitemap)
@ -107,12 +114,12 @@ namespace Oqtane.Pages
writer.WriteElementString("lastmod", url.ModifiedOn.ToString("yyyy-MM-dd")); writer.WriteElementString("lastmod", url.ModifiedOn.ToString("yyyy-MM-dd"));
writer.WriteEndElement(); writer.WriteEndElement();
} }
writer.WriteEndElement();
writer.WriteEndDocument();
writer.Close(); writer.Close();
} }
sitemapXml = builder.ToString(); return Content(xmlDeclaration + builder.ToString(), "application/xml");
return Content(sitemapXml, "application/xml");
} }
} }
} }