var xmlstr = @"<xml> <AppId>some_appid</AppId> <CreateTime>1413192605</CreateTime> <InfoType>component_verify_ticket</InfoType> <ComponentVerifyTicket>some_verify_ticket</ComponentVerifyTicket> </xml>"; Stopwatch sw = Stopwatch.StartNew(); for (int i = 0; i < 1000; i++) { XmlDocument doc = new XmlDocument(); doc.XmlResolver = null; XmlNode root; doc.LoadXml(xmlstr); root = doc.FirstChild; var sEncryptMsg = root["ComponentVerifyTicket"].InnerText; } sw.Stop(); var docts = sw.ElapsedMilliseconds; sw.Restart(); for (int i = 0; i < 1000; i++) { XElement xe = XElement.Parse(xmlstr); var sEncryptMsg = xe.Element("ComponentVerifyTicket").Value; } sw.Stop(); MessageBox.Show(docts + "," +sw.ElapsedMilliseconds.ToString());
XmlDocumentd的耗時大概是XElement 的4倍以上app