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
- StringFormat.cs
- RightsManagementEncryptionTransform.cs
- MimePart.cs
- VisualTreeHelper.cs
- HttpApplicationFactory.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- AppDomainManager.cs
- DetailsView.cs
- Propagator.JoinPropagator.cs
- DocumentPaginator.cs
- EventSinkHelperWriter.cs
- ViewgenGatekeeper.cs
- ToolStripGrip.cs
- ADMembershipUser.cs
- TransactionValidationBehavior.cs
- As.cs
- ObjectTag.cs
- ExternalFile.cs
- EventLogPermissionAttribute.cs
- ExpressionConverter.cs
- XmlBinaryReader.cs
- QuerySettings.cs
- xml.cs
- PrimitiveSchema.cs
- FeatureSupport.cs
- AttachedPropertyDescriptor.cs
- CodeConditionStatement.cs
- AnnotationStore.cs
- Comparer.cs
- DeflateEmulationStream.cs
- ChannelManagerService.cs
- HtmlPageAdapter.cs
- ThemeInfoAttribute.cs
- FileReader.cs
- CodeAccessPermission.cs
- ObjectTypeMapping.cs
- TypeReference.cs
- DbProviderConfigurationHandler.cs
- DataServiceQueryException.cs
- ImageMap.cs
- ContravarianceAdapter.cs
- XmlBaseWriter.cs
- ProxyHwnd.cs
- CredentialCache.cs
- VisualStyleTypesAndProperties.cs
- ProfilePropertyMetadata.cs
- ConfigXmlCDataSection.cs
- UrlMappingCollection.cs
- TypeConverterHelper.cs
- XmlSchemaSequence.cs
- TypeResolvingOptionsAttribute.cs
- XsltArgumentList.cs
- ToolStripSeparatorRenderEventArgs.cs
- ListBoxItem.cs
- SoapExtensionStream.cs
- DataBindingHandlerAttribute.cs
- SqlDataSourceSelectingEventArgs.cs
- DataRelation.cs
- UITypeEditors.cs
- PatternMatcher.cs
- InteropBitmapSource.cs
- XmlIlGenerator.cs
- AppModelKnownContentFactory.cs
- ThemeDirectoryCompiler.cs
- HttpSessionStateBase.cs
- InputLanguageManager.cs
- FunctionGenerator.cs
- XmlTextReaderImplHelpers.cs
- SizeConverter.cs
- AuthenticationService.cs
- TextSchema.cs
- ConnectionString.cs
- SuppressedPackageProperties.cs
- ObjectStateEntryDbDataRecord.cs
- EdmPropertyAttribute.cs
- PathFigureCollectionValueSerializer.cs
- BuildTopDownAttribute.cs
- TransportationConfigurationTypeInstallComponent.cs
- AnimationTimeline.cs
- FixedTextBuilder.cs
- Color.cs
- SchemaImporterExtensionElement.cs
- JavascriptCallbackBehaviorAttribute.cs
- Rotation3DAnimationBase.cs
- FloaterBaseParagraph.cs
- TypeElement.cs
- KeyProperty.cs
- TableRowGroup.cs
- MembershipValidatePasswordEventArgs.cs
- WebPageTraceListener.cs
- WindowsSlider.cs
- TemplateBindingExpressionConverter.cs
- BitmapEffectInputData.cs
- CmsUtils.cs
- PathFigureCollectionConverter.cs
- SubMenuStyle.cs
- HtmlInputReset.cs
- PrintPageEvent.cs
- SortDescriptionCollection.cs
- InvalidEnumArgumentException.cs