Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / 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. //---------------------------------------------------------------------------- // //// 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
- HtmlFormWrapper.cs
- Color.cs
- SelectionItemProviderWrapper.cs
- BaseAddressElement.cs
- HashAlgorithm.cs
- Lock.cs
- Enumerable.cs
- PanelContainerDesigner.cs
- DbParameterCollectionHelper.cs
- Form.cs
- UIServiceHelper.cs
- EditorPartChrome.cs
- ServerIdentity.cs
- DocumentOrderQuery.cs
- TraceEventCache.cs
- FileSecurity.cs
- DictationGrammar.cs
- ContentControl.cs
- log.cs
- EventManager.cs
- Normalizer.cs
- SemanticResolver.cs
- ProviderUtil.cs
- RequestUriProcessor.cs
- SqlProvider.cs
- FieldNameLookup.cs
- UpdatePanelTriggerCollection.cs
- SafeNativeMethodsCLR.cs
- HwndPanningFeedback.cs
- ServiceReference.cs
- Schema.cs
- ThemeDirectoryCompiler.cs
- TextPointerBase.cs
- HtmlProps.cs
- DataGridViewComboBoxColumn.cs
- DocumentSequenceHighlightLayer.cs
- SafeRightsManagementQueryHandle.cs
- TopClause.cs
- ToolStripPanelRenderEventArgs.cs
- DeferredElementTreeState.cs
- RIPEMD160.cs
- MenuItem.cs
- LayoutUtils.cs
- StrokeSerializer.cs
- TPLETWProvider.cs
- Region.cs
- MSAAWinEventWrap.cs
- MouseActionConverter.cs
- SqlBuilder.cs
- DbConnectionStringBuilder.cs
- assemblycache.cs
- KeysConverter.cs
- ApplicationContext.cs
- UDPClient.cs
- WindowsIdentity.cs
- AsynchronousChannel.cs
- GridLength.cs
- NativeMethods.cs
- ToolstripProfessionalRenderer.cs
- ToolbarAUtomationPeer.cs
- OdbcDataReader.cs
- SystemFonts.cs
- UTF8Encoding.cs
- MetafileHeader.cs
- figurelength.cs
- ControlBindingsCollection.cs
- SqlDataSourceView.cs
- InputLangChangeEvent.cs
- DefaultBinder.cs
- TemplatePropertyEntry.cs
- ScrollBar.cs
- NonVisualControlAttribute.cs
- DecimalFormatter.cs
- AnimationException.cs
- ConstraintEnumerator.cs
- TextBounds.cs
- XamlVector3DCollectionSerializer.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- EmptyStringExpandableObjectConverter.cs
- StateItem.cs
- UserControlFileEditor.cs
- HitTestWithGeometryDrawingContextWalker.cs
- IndexedString.cs
- sqlser.cs
- ContextMarshalException.cs
- DefaultBinder.cs
- Attributes.cs
- SQLGuidStorage.cs
- ZipIOLocalFileDataDescriptor.cs
- TranslateTransform.cs
- ToolStripHighContrastRenderer.cs
- Container.cs
- SrgsOneOf.cs
- ContainerControlDesigner.cs
- MimeImporter.cs
- sqlstateclientmanager.cs
- SchemaCollectionPreprocessor.cs
- GacUtil.cs
- RichTextBox.cs
- OleDbConnectionPoolGroupProviderInfo.cs