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
- GridItemCollection.cs
- TextTreeFixupNode.cs
- IPHostEntry.cs
- DataMemberAttribute.cs
- MessageSecurityProtocol.cs
- TextEditorThreadLocalStore.cs
- SystemBrushes.cs
- Model3D.cs
- MultipleCopiesCollection.cs
- XmlTypeAttribute.cs
- XmlEntity.cs
- ConstrainedDataObject.cs
- Asn1Utilities.cs
- PolyQuadraticBezierSegment.cs
- WindowsListViewSubItem.cs
- IteratorFilter.cs
- unsafenativemethodsother.cs
- ConsumerConnectionPoint.cs
- CharConverter.cs
- IdentityModelDictionary.cs
- UriWriter.cs
- WebBaseEventKeyComparer.cs
- IncrementalCompileAnalyzer.cs
- CryptographicAttribute.cs
- ObjectDataSourceMethodEventArgs.cs
- MenuAutomationPeer.cs
- SQLString.cs
- XmlSchemaObjectCollection.cs
- SignatureToken.cs
- NewExpression.cs
- AddInDeploymentState.cs
- PasswordTextNavigator.cs
- SystemKeyConverter.cs
- VisualBasicExpressionConverter.cs
- WebPartTransformer.cs
- HTTPNotFoundHandler.cs
- VisualTreeUtils.cs
- TcpClientCredentialType.cs
- UIntPtr.cs
- PropertyEntry.cs
- PeerApplicationLaunchInfo.cs
- UdpDiscoveryEndpointElement.cs
- GatewayIPAddressInformationCollection.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- FormatterConverter.cs
- HitTestResult.cs
- ValueOfAction.cs
- XmlObjectSerializerReadContextComplex.cs
- MarshalDirectiveException.cs
- TransactionValidationBehavior.cs
- UrlAuthFailedErrorFormatter.cs
- DataGridViewRowConverter.cs
- MemoryPressure.cs
- DataControlField.cs
- Faults.cs
- NameValueSectionHandler.cs
- TextSpanModifier.cs
- RuntimeResourceSet.cs
- WorkflowServiceAttributes.cs
- RequestStatusBarUpdateEventArgs.cs
- RequestCachingSection.cs
- ObjectDataSourceMethodEventArgs.cs
- UrlMapping.cs
- HybridWebProxyFinder.cs
- SchemaImporterExtensionsSection.cs
- PointLight.cs
- CutCopyPasteHelper.cs
- DataGridViewRowPostPaintEventArgs.cs
- EntityDataSourceValidationException.cs
- BehaviorEditorPart.cs
- ChtmlTextWriter.cs
- InputMethodStateChangeEventArgs.cs
- SqlClientWrapperSmiStreamChars.cs
- VisualStyleElement.cs
- ConfigurationElementProperty.cs
- GraphicsPath.cs
- RuleSettings.cs
- Hashtable.cs
- FragmentQuery.cs
- WindowHideOrCloseTracker.cs
- CdpEqualityComparer.cs
- LambdaCompiler.Unary.cs
- EventHandlerList.cs
- CalculatedColumn.cs
- WebColorConverter.cs
- Span.cs
- DataGridViewRowEventArgs.cs
- DBNull.cs
- Rotation3DKeyFrameCollection.cs
- MULTI_QI.cs
- LinearGradientBrush.cs
- XmlDownloadManager.cs
- WebPartEditorCancelVerb.cs
- ThreadTrace.cs
- BaseDataBoundControl.cs
- DataGridPreparingCellForEditEventArgs.cs
- Thread.cs
- SchemaImporterExtension.cs
- ForceCopyBuildProvider.cs
- GeneratedView.cs