Это может быть излишним, но вы можете использовать LINQ to XML для генерации вашей HTML-строки ... Вот ваш код, используя LINQ и XElement для генерации простой таблицы.
Единственное, с чем вам нужно быть осторожным, это пустые теги, которые недопустимы в качестве самозакрывающихся тегов в HTML. Например, пустой TD: new XElement("td")
будет отображаться как <td/>
, что не является допустимым HTML. Вы можете исправить это, вставив пустую строку в качестве содержимого: new XElement("td", String.Empty)
- это выведет <td></td>
.
private string GetHtmlString()
{
DirectoryInfo di = new DirectoryInfo("some directory");
FileInfo[] files = di.GetFiles("*.dll", SearchOption.AllDirectories);
var container = new XElement("table",
from file in files
let assembly = Assembly.LoadFile(file.FullName)
select new XElement("tr",
new XElement("td", file.FullName),
new XElement("td", assembly.GetName().Version.ToString())
)
);
return container.ToString();
}