Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Xml / System / Xml / XPath / XPathExpr.cs / 1 / XPathExpr.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.XPath { using System; using System.Xml; using System.Collections; using MS.Internal.Xml.XPath; public enum XmlSortOrder { Ascending = 1, Descending = 2, } public enum XmlCaseOrder { None = 0, UpperFirst = 1, LowerFirst = 2, } public enum XmlDataType { Text = 1, Number = 2, } public enum XPathResultType { Number = 0 , String = 1, Boolean = 2, NodeSet = 3, Navigator = XPathResultType.String, Any = 5, Error }; public abstract class XPathExpression { internal XPathExpression(){} public abstract string Expression { get; } public abstract void AddSort(object expr, IComparer comparer); public abstract void AddSort(object expr, XmlSortOrder order, XmlCaseOrder caseOrder, string lang, XmlDataType dataType); public abstract XPathExpression Clone(); public abstract void SetContext(XmlNamespaceManager nsManager); public abstract void SetContext(IXmlNamespaceResolver nsResolver); public abstract XPathResultType ReturnType { get; } public static XPathExpression Compile(string xpath) { return Compile(xpath, /*nsResolver:*/null); } public static XPathExpression Compile(string xpath, IXmlNamespaceResolver nsResolver) { bool hasPrefix; Query query = new QueryBuilder().Build(xpath, out hasPrefix); CompiledXpathExpr expr = new CompiledXpathExpr(query, xpath, hasPrefix); if (null != nsResolver) { XmlNamespaceManager mngr = XPathNavigator.GetNamespaces(nsResolver); expr.SetContext(mngr); } return expr; } private void PrintQuery(XmlWriter w) { ((CompiledXpathExpr)this).QueryTree.PrintQuery(w); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.XPath { using System; using System.Xml; using System.Collections; using MS.Internal.Xml.XPath; public enum XmlSortOrder { Ascending = 1, Descending = 2, } public enum XmlCaseOrder { None = 0, UpperFirst = 1, LowerFirst = 2, } public enum XmlDataType { Text = 1, Number = 2, } public enum XPathResultType { Number = 0 , String = 1, Boolean = 2, NodeSet = 3, Navigator = XPathResultType.String, Any = 5, Error }; public abstract class XPathExpression { internal XPathExpression(){} public abstract string Expression { get; } public abstract void AddSort(object expr, IComparer comparer); public abstract void AddSort(object expr, XmlSortOrder order, XmlCaseOrder caseOrder, string lang, XmlDataType dataType); public abstract XPathExpression Clone(); public abstract void SetContext(XmlNamespaceManager nsManager); public abstract void SetContext(IXmlNamespaceResolver nsResolver); public abstract XPathResultType ReturnType { get; } public static XPathExpression Compile(string xpath) { return Compile(xpath, /*nsResolver:*/null); } public static XPathExpression Compile(string xpath, IXmlNamespaceResolver nsResolver) { bool hasPrefix; Query query = new QueryBuilder().Build(xpath, out hasPrefix); CompiledXpathExpr expr = new CompiledXpathExpr(query, xpath, hasPrefix); if (null != nsResolver) { XmlNamespaceManager mngr = XPathNavigator.GetNamespaces(nsResolver); expr.SetContext(mngr); } return expr; } private void PrintQuery(XmlWriter w) { ((CompiledXpathExpr)this).QueryTree.PrintQuery(w); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ExtendedPropertyDescriptor.cs
- xmlglyphRunInfo.cs
- MediaContextNotificationWindow.cs
- XmlWrappingReader.cs
- RelatedEnd.cs
- FormView.cs
- DiscreteKeyFrames.cs
- SimpleNameService.cs
- FragmentQueryKB.cs
- CompositionTarget.cs
- LostFocusEventManager.cs
- InputScopeConverter.cs
- TransactionInterop.cs
- GridViewCancelEditEventArgs.cs
- WebBaseEventKeyComparer.cs
- hresults.cs
- URLIdentityPermission.cs
- AllMembershipCondition.cs
- SEHException.cs
- Boolean.cs
- NeutralResourcesLanguageAttribute.cs
- ConfigurationStrings.cs
- BitmapEncoder.cs
- ClientTargetCollection.cs
- CodeSpit.cs
- TrackingQueryElement.cs
- WebPartConnectionsConnectVerb.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- HybridDictionary.cs
- GridToolTip.cs
- Journal.cs
- SerializationObjectManager.cs
- GeometryHitTestResult.cs
- SqlDependencyListener.cs
- NotCondition.cs
- ZoomPercentageConverter.cs
- TlsnegoTokenProvider.cs
- AdRotator.cs
- XPathNode.cs
- FontResourceCache.cs
- NotifyCollectionChangedEventArgs.cs
- AuthenticationException.cs
- TripleDESCryptoServiceProvider.cs
- ExtenderProviderService.cs
- PackageRelationship.cs
- oledbconnectionstring.cs
- XmlSchemaAnnotation.cs
- DockPatternIdentifiers.cs
- SocketConnection.cs
- PowerStatus.cs
- _OSSOCK.cs
- QueryConverter.cs
- StateMachineHelpers.cs
- OleDbSchemaGuid.cs
- LeaseManager.cs
- DrawingAttributeSerializer.cs
- ArraySubsetEnumerator.cs
- GradientSpreadMethodValidation.cs
- SizeChangedInfo.cs
- AlternateViewCollection.cs
- GacUtil.cs
- DbDataRecord.cs
- ReadOnlyDataSource.cs
- TemplateContentLoader.cs
- SQLGuidStorage.cs
- Accessible.cs
- SafeViewOfFileHandle.cs
- ISCIIEncoding.cs
- ParallelTimeline.cs
- NullableDoubleMinMaxAggregationOperator.cs
- XmlName.cs
- DeferredBinaryDeserializerExtension.cs
- RegexGroupCollection.cs
- ContentDefinition.cs
- ArrayExtension.cs
- ProviderIncompatibleException.cs
- TargetException.cs
- AppDomainUnloadedException.cs
- EventLogPermission.cs
- XmlWriterDelegator.cs
- TraceSection.cs
- KnownTypeHelper.cs
- RowUpdatingEventArgs.cs
- SecureStringHasher.cs
- GroupDescription.cs
- BasicViewGenerator.cs
- Grant.cs
- RegisteredDisposeScript.cs
- TextBoxDesigner.cs
- Wow64ConfigurationLoader.cs
- XmlUnspecifiedAttribute.cs
- TextServicesCompartmentEventSink.cs
- WindowsStartMenu.cs
- TemplateBamlRecordReader.cs
- WhitespaceRule.cs
- linebase.cs
- UserPersonalizationStateInfo.cs
- GridPattern.cs
- BooleanConverter.cs
- ExtendLockAsyncResult.cs