Ich versuche, eine einfache HTML-Webseite mit C#
und HTMLTextWriter
zur Ausgabe an ein WebBrower
Objekt zu machen, aber Probleme habe den <meta>
Tag in meiner HTML
Ausgabe zu machen.Schreiben einen <meta>-Tag mit Htmltextwriter in C# Ausgabe
Was ich erwarte ausgegeben werden ..
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>My Website</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
Was derzeit ausgegeben wird ..
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</meta charset="UTF-8"><title>
My Website
</title>
</head><body>
<h1>
Hello World!
</h1>
</body>
</html>
Beachten Sie, wie die
<meta>
Tag ausgegeben als<meta charset="UTF-8">
ist &</meta charset="UTF-8">
statt nur<meta charset="UTF-8">
.Was kann ich tun, um dieses Problem zu beheben?
Hier ist der Code ich verwende ..
var sw = new StringWriter();
using (var writer = new HtmlTextWriter(sw)) {
writer.RenderBeginTag("!DOCTYPE html");
writer.RenderBeginTag(HtmlTextWriterTag.Html);
writer.RenderBeginTag(HtmlTextWriterTag.Head);
writer.RenderBeginTag("meta charset=\"UTF-8\"");
writer.RenderEndTag();
writer.RenderBeginTag(HtmlTextWriterTag.Title);
writer.Write("SIT323 - My Website");
writer.RenderEndTag();
writer.RenderEndTag();
writer.RenderBeginTag(HtmlTextWriterTag.Body);
writer.RenderBeginTag(HtmlTextWriterTag.H1);
writer.Write("Hello World!");
writer.RenderEndTag();
writer.RenderEndTag();
writer.RenderEndTag();
};
return sw.ToString();
Perfekt! Vielen Dank. – TheAuzzieJesus
@TheAuzzieJesus, sehen Sie sich bitte erneut den Antwortcode an. Notic you ** sollte ** 'RenderEndTag()' nach 'RenderBeginTag (...)' verwenden. In den anderen Worten sollte man nach jedem 'RenderBeginTag (...)' endlich 'RenderEndTag()' verwenden. Sie können bei Bedarf andere Methoden verwenden. – RAM
Danke, ich habe es glücklicherweise durch Versuch und Irrtum herausgefunden. – TheAuzzieJesus