Я пытаюсь сделать основной HTML веб-страницу с помощью C#
и HTMLTextWriter
для вывода на WebBrower
объекта #, но у меня возникают проблемы, оказывающие <meta>
тега в моем HTML
выходе.Дать <meta> метку, используя HtmlTextWriter в C вопрос
То, что я ожидал, чтобы быть выход ..
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>My Website</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
что в настоящее время выход ..
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</meta charset="UTF-8"><title>
My Website
</title>
</head><body>
<h1>
Hello World!
</h1>
</body>
</html>
Обратите внимание, как
<meta>
тег выводится в<meta charset="UTF-8">
&</meta charset="UTF-8">
вместо<meta charset="UTF-8">
.Что я могу сделать, чтобы исправить эту проблему?
Вот код, я использую ..
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();
Отлично! Спасибо. – TheAuzzieJesus
@ TheAuzzieJesus, пожалуйста, снова просмотрите код ответа. Notic вы ** должны ** использовать 'RenderEndTag()' после 'RenderBeginTag (...)'. Другими словами, вы должны, наконец, использовать 'RenderEndTag()' после каждого 'RenderBeginTag (...)'. Хотя между ними могут быть другие методы. – RAM
Благодарим вас, я сумел понять это с помощью пробной ошибки. – TheAuzzieJesus