显示IEnumerable HtmlElement集合中的每个元素

时间:2013-12-12 21:39:33

标签: c# foreach ienumerable

我有一个集合:IEnumberable<HtmlElement> propertyElements

我想使用foreach循环枚举此集合,并查看其中包含的每个HtmlElement。

到目前为止,我的代码看起来像这样:

private static void PrintObject(IEnumerable<HtmlElement> propertyElements)
    {
        Console.WriteLine("---------------------------------");
        foreach (HtmlElement element in propertyElements)
        {
            Console.WriteLine(element.ToString());
        }
        Console.WriteLine("---------------------------------");
    }

我的输出看起来像这样:

System.Windows.Forms.HtmlElement
System.Windows.Forms.HtmlElement
System.Windows.Forms.HtmlElement
System.Windows.Forms.HtmlElement
System.Windows.Forms.HtmlElement

有人可以指出我做错了吗?

2 个答案:

答案 0 :(得分:1)

您需要打印每个元素的属性。

http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlelement(v=vs.110).aspx

使用类似InnerHtml / InnerText或OuterHtml / OuterText

的内容

如果您想要元素类型,请使用TagName

Console.WriteLine(element.TagName);

http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlelement.tagname(v=vs.110).aspx

答案 1 :(得分:1)

就像@Bo指出你可以做这样的事情

private static void PrintObject(IEnumerable<HtmlElement> propertyElements)
{
    Console.WriteLine("---------------------------------");
    foreach (HtmlElement element in propertyElements)
    {
        Console.WriteLine(element.OuterHtml);
        //or
        Console.WriteLine(element.Name);
        //or
        Console.WriteLine(element.InnerHtml);
        //or
        Console.WriteLine(element.TagName);
    }
    Console.WriteLine("---------------------------------");
}