黑夜的狼

沮丧吗,那就是一种无病呻吟!留恋它就是一种高度近视!目光应该放得更远一点! 别不想飞,只是要一步跨过太平洋!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

XmlElement is a subclass of XmlNode (and so is XmlAttribute, XmlText, XmlDocument, etc.). There is no performance implication of using one over the other at all, since XmlNode is simply the base class for all types of nodes in a DOM Xml document instance.

It just so happens, that many of the APIs in the DOM return an XmlNode reference because they could return several kinds of nodes. For example, with SelectSingleNode(), your XPath expression could return an element, an attribute, an XmlText and what not; whether you handle it as an XmlNode or cast it to the right type is just a matter of how you write your code but won't affect performance at all.

XmlElements are a type of node. In fact, if you look at the members of XmlNode and XmlElement in the .NET Framework, you will see that  they are   very much alike, but XmlElement has more going on. It inherits XmlNode and then is further customized. This is because an element is more   specialized. A node is more general in scope. The document is a node, a processing instruction is a node, and so forth. Elements are   different. If you look at the XmlNodeType property of an element, you will see that it is Element, one of the many types of nodes you find. 

posted on 2011-06-21 08:11  anncesky  阅读(438)  评论(0)    收藏  举报