Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / XPath / XPathExpr.cs / 1305376 / 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) { expr.SetContext(nsResolver); } 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) { expr.SetContext(nsResolver); } 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
- ResetableIterator.cs
- SafeCoTaskMem.cs
- FormViewRow.cs
- BamlRecords.cs
- MultipleViewProviderWrapper.cs
- HandlerFactoryWrapper.cs
- SspiSecurityToken.cs
- InkCanvasAutomationPeer.cs
- BindingCollection.cs
- HostAdapter.cs
- SystemNetworkInterface.cs
- PolicyLevel.cs
- HtmlToClrEventProxy.cs
- AssemblyUtil.cs
- SQLDateTime.cs
- Socket.cs
- UserControlCodeDomTreeGenerator.cs
- CharacterMetrics.cs
- Directory.cs
- XsdCachingReader.cs
- Point3DCollection.cs
- ExpressionBuilderContext.cs
- InheritanceContextChangedEventManager.cs
- PersonalizationStateInfoCollection.cs
- Padding.cs
- ClientConfigPaths.cs
- SystemParameters.cs
- DocumentGrid.cs
- JumpItem.cs
- UIElement.cs
- SystemException.cs
- DoubleAnimationUsingKeyFrames.cs
- XDRSchema.cs
- ParentControlDesigner.cs
- Attributes.cs
- ToolStripDropDownClosedEventArgs.cs
- filewebrequest.cs
- PowerStatus.cs
- Italic.cs
- ScalarType.cs
- PrintEvent.cs
- SuppressIldasmAttribute.cs
- RequestCache.cs
- TextEditorCharacters.cs
- SequenceQuery.cs
- Page.cs
- NativeMethods.cs
- Marshal.cs
- CompiledQueryCacheEntry.cs
- DelegateSerializationHolder.cs
- GatewayDefinition.cs
- RowType.cs
- DoubleCollection.cs
- CombinedGeometry.cs
- PageSettings.cs
- httpstaticobjectscollection.cs
- smtpconnection.cs
- TypedRowGenerator.cs
- StreamUpdate.cs
- FilteredAttributeCollection.cs
- VSWCFServiceContractGenerator.cs
- Transform3DCollection.cs
- Model3D.cs
- StoryFragments.cs
- Help.cs
- GridViewSortEventArgs.cs
- UnsafeNativeMethods.cs
- ColumnResult.cs
- RegexCapture.cs
- HttpResponse.cs
- NullExtension.cs
- Control.cs
- DataSetSchema.cs
- ImageUrlEditor.cs
- PropertyChangedEventArgs.cs
- ListViewEditEventArgs.cs
- RecognizerStateChangedEventArgs.cs
- HttpResponseInternalWrapper.cs
- FixedSOMPageElement.cs
- IdleTimeoutMonitor.cs
- ToolStripProgressBar.cs
- DateTimeOffsetStorage.cs
- SizeConverter.cs
- BmpBitmapDecoder.cs
- EndpointPerformanceCounters.cs
- DropDownButton.cs
- OrderByQueryOptionExpression.cs
- WebProxyScriptElement.cs
- DiffuseMaterial.cs
- TwoPhaseCommit.cs
- GridViewSortEventArgs.cs
- XamlSerializerUtil.cs
- WeakRefEnumerator.cs
- FileLogRecordStream.cs
- ApplicationServiceHelper.cs
- InstanceCompleteException.cs
- Thread.cs
- XsltCompileContext.cs
- GraphicsPathIterator.cs
- ClientRolePrincipal.cs