Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Shared / MS / Internal / XmlHelper.cs / 1 / XmlHelper.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // Description: // Implements some helper functions for Xml nodes. // //--------------------------------------------------------------------------- using System; using System.Xml; #if WINDOWS_BASE using MS.Internal.WindowsBase; #elif PRESENTATION_CORE using MS.Internal.PresentationCore; #elif PRESENTATIONFRAMEWORK using MS.Internal.PresentationFramework; #elif DRT using MS.Internal.Drt; #else #error Attempt to use FriendAccessAllowedAttribute from an unknown assembly. using MS.Internal.YourAssemblyName; #endif namespace MS.Internal { [FriendAccessAllowed] static class XmlHelper { ////// Return true if the given item is an XML node. /// internal static bool IsXmlNode(object item) { if (item != null) { Type type = item.GetType(); return type.FullName.StartsWith("System.Xml", StringComparison.Ordinal) && IsXmlNodeHelper(item); } else return false; } // separate function to avoid JIT-ing System.Xml until we have a good reason private static bool IsXmlNodeHelper(object item) { return item is System.Xml.XmlNode; } ////// Return a string by applying an XPath query to an XmlNode. /// internal static string SelectStringValue(XmlNode node, string query) { return SelectStringValue(node, query, null); } ////// Return a string by applying an XPath query to an XmlNode. /// internal static string SelectStringValue(XmlNode node, string query, XmlNamespaceManager namespaceManager) { string strValue; XmlNode result; result = node.SelectSingleNode(query, namespaceManager); if (result != null) { strValue = XmlHelper.ExtractString(result); } else { strValue = String.Empty; } return strValue; } ////// Get a string from an XmlNode (of any kind: element, attribute, etc.) /// internal static string ExtractString(XmlNode node) { string value = ""; if (node.NodeType == XmlNodeType.Element) { for (int i = 0; i < node.ChildNodes.Count; i++) { if (node.ChildNodes[i].NodeType == XmlNodeType.Text) { value += node.ChildNodes[i].Value; } } } else { value = node.Value; } return value; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConfigurationValue.cs
- ScopelessEnumAttribute.cs
- PlaceHolder.cs
- XmlAttributeCache.cs
- XmlToDatasetMap.cs
- BaseValidator.cs
- DocumentSequence.cs
- FacetDescription.cs
- CacheDependency.cs
- SyndicationLink.cs
- TableSectionStyle.cs
- AccessViolationException.cs
- AddInIpcChannel.cs
- updateconfighost.cs
- DBDataPermissionAttribute.cs
- ProfileInfo.cs
- SharedDp.cs
- XmlDocumentSurrogate.cs
- AsymmetricSecurityProtocolFactory.cs
- Parser.cs
- Token.cs
- TextEditorSelection.cs
- XmlSiteMapProvider.cs
- WrapPanel.cs
- SendActivity.cs
- OracleCommand.cs
- DetailsViewRowCollection.cs
- KeyPullup.cs
- BufferedReadStream.cs
- WSSecurityTokenSerializer.cs
- UidManager.cs
- EUCJPEncoding.cs
- ItemCollection.cs
- PersistenceProvider.cs
- RtType.cs
- serverconfig.cs
- HttpMethodAttribute.cs
- handlecollector.cs
- FontStyleConverter.cs
- SingleAnimationUsingKeyFrames.cs
- ArcSegment.cs
- HitTestResult.cs
- EventBookmark.cs
- PersonalizationEntry.cs
- NullableConverter.cs
- HitTestWithPointDrawingContextWalker.cs
- _SslState.cs
- ILGenerator.cs
- ProfileBuildProvider.cs
- InternalConfigSettingsFactory.cs
- ChtmlSelectionListAdapter.cs
- TextDecorationLocationValidation.cs
- DataSourceIDConverter.cs
- Int32.cs
- SHA1.cs
- WorkflowRequestContext.cs
- MemoryFailPoint.cs
- CodeTypeMember.cs
- sqlser.cs
- ReadWriteObjectLock.cs
- WebPartTransformerAttribute.cs
- LocatorManager.cs
- ComponentResourceKeyConverter.cs
- RegexGroup.cs
- HwndSource.cs
- AnimationStorage.cs
- ThreadStateException.cs
- HttpDictionary.cs
- QilReplaceVisitor.cs
- NotifyParentPropertyAttribute.cs
- AtomicFile.cs
- GroupItem.cs
- RelationshipDetailsCollection.cs
- ListViewItem.cs
- PrtCap_Public.cs
- DateTimeAutomationPeer.cs
- URIFormatException.cs
- GenericEnumerator.cs
- DrawItemEvent.cs
- XmlMessageFormatter.cs
- DataGridRowEventArgs.cs
- SignatureToken.cs
- WebPartMenu.cs
- SpecialTypeDataContract.cs
- SpellerInterop.cs
- SqlFileStream.cs
- XPathAxisIterator.cs
- WebPartDisplayModeCollection.cs
- EmptyQuery.cs
- TextDecorationLocationValidation.cs
- ScriptManager.cs
- TabletDeviceInfo.cs
- IxmlLineInfo.cs
- CommandBindingCollection.cs
- ComplexTypeEmitter.cs
- ValueQuery.cs
- GridItemPattern.cs
- _Win32.cs
- Point3DAnimationUsingKeyFrames.cs
- RawTextInputReport.cs