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
- OpenTypeLayoutCache.cs
- FunctionQuery.cs
- BasicHttpBindingElement.cs
- Guid.cs
- Cloud.cs
- ThreadInterruptedException.cs
- NavigationProgressEventArgs.cs
- ExpressionQuoter.cs
- ExpressionPrefixAttribute.cs
- DefaultHttpHandler.cs
- SchemaImporterExtension.cs
- InputScopeConverter.cs
- EditableRegion.cs
- AutomationAttributeInfo.cs
- AsyncOperation.cs
- PreviewPageInfo.cs
- XmlSortKeyAccumulator.cs
- RewritingValidator.cs
- PassportIdentity.cs
- QilCloneVisitor.cs
- PerfCounterSection.cs
- LinkDescriptor.cs
- RegexGroupCollection.cs
- Walker.cs
- FamilyTypefaceCollection.cs
- System.Data.OracleClient_BID.cs
- BinHexDecoder.cs
- EntityDataSourceUtil.cs
- StateRuntime.cs
- WebPartConnection.cs
- KeyConstraint.cs
- TableCellCollection.cs
- TextInfo.cs
- TCEAdapterGenerator.cs
- TypedTableGenerator.cs
- MatrixTransform.cs
- EventLogTraceListener.cs
- WebPartTransformer.cs
- MouseButtonEventArgs.cs
- Rijndael.cs
- InternalEnumValidatorAttribute.cs
- HideDisabledControlAdapter.cs
- Token.cs
- XmlAutoDetectWriter.cs
- CqlParserHelpers.cs
- PageEventArgs.cs
- EventMappingSettings.cs
- InternalCache.cs
- LicenseContext.cs
- AttributeXamlType.cs
- ConnectionPoolManager.cs
- CriticalExceptions.cs
- TransactionTable.cs
- Encoding.cs
- ContentElementAutomationPeer.cs
- HashMembershipCondition.cs
- LinkLabel.cs
- DeviceContexts.cs
- SspiSecurityTokenParameters.cs
- VirtualPathUtility.cs
- UTF8Encoding.cs
- FunctionImportMapping.ReturnTypeRenameMapping.cs
- DetailsViewInsertEventArgs.cs
- cache.cs
- SqlNodeTypeOperators.cs
- XmlSchemaDatatype.cs
- Timeline.cs
- PropertyChange.cs
- MouseGestureValueSerializer.cs
- DependencySource.cs
- EventMappingSettingsCollection.cs
- NamespaceDecl.cs
- TokenBasedSetEnumerator.cs
- DashStyle.cs
- Variable.cs
- LineInfo.cs
- dtdvalidator.cs
- PassportIdentity.cs
- Operators.cs
- SHA512Managed.cs
- SqlLiftWhereClauses.cs
- AsyncStreamReader.cs
- MembershipAdapter.cs
- SiteOfOriginContainer.cs
- IfAction.cs
- XhtmlConformanceSection.cs
- AttributeProviderAttribute.cs
- ItemsControlAutomationPeer.cs
- DialogWindow.cs
- TextLineBreak.cs
- SafeArrayTypeMismatchException.cs
- ComplexTypeEmitter.cs
- DataGridViewLinkColumn.cs
- EmptyEnumerator.cs
- ProgressBarRenderer.cs
- DropDownButton.cs
- WebPartManagerInternals.cs
- BaseAddressPrefixFilterElement.cs
- TemplatedWizardStep.cs
- AsyncDataRequest.cs