Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- ListViewDeletedEventArgs.cs
- SmiMetaData.cs
- ObjectHandle.cs
- GeometryHitTestResult.cs
- Soap12ServerProtocol.cs
- SynchronousChannelMergeEnumerator.cs
- Vector3DKeyFrameCollection.cs
- FullTextLine.cs
- QualifiedCellIdBoolean.cs
- AxParameterData.cs
- PasswordTextContainer.cs
- DataGridItemAttachedStorage.cs
- ColumnHeaderConverter.cs
- SafeArrayTypeMismatchException.cs
- RelationshipEndMember.cs
- OracleFactory.cs
- ServiceManager.cs
- DataGridItem.cs
- CLSCompliantAttribute.cs
- ResourceDefaultValueAttribute.cs
- HyperLink.cs
- TypeConverterHelper.cs
- XmlQueryContext.cs
- InstancePersistenceException.cs
- SmtpTransport.cs
- Rect3DConverter.cs
- AgileSafeNativeMemoryHandle.cs
- Enum.cs
- CounterCreationData.cs
- AmbientEnvironment.cs
- ServiceDescriptionImporter.cs
- DES.cs
- ServerValidateEventArgs.cs
- Listener.cs
- ArcSegment.cs
- StrokeNodeEnumerator.cs
- FactoryGenerator.cs
- MessageQueueTransaction.cs
- sqlinternaltransaction.cs
- ListSourceHelper.cs
- WindowsAuthenticationEventArgs.cs
- TerminateSequenceResponse.cs
- ListItemCollection.cs
- NoResizeSelectionBorderGlyph.cs
- TextureBrush.cs
- EnumMemberAttribute.cs
- WebPartZoneCollection.cs
- LinqToSqlWrapper.cs
- DataControlReferenceCollection.cs
- HyperLinkDataBindingHandler.cs
- Point3D.cs
- sapiproxy.cs
- WebEncodingValidator.cs
- ReadOnlyCollectionBase.cs
- XmlDocumentType.cs
- TextDecorations.cs
- ListViewVirtualItemsSelectionRangeChangedEvent.cs
- GestureRecognitionResult.cs
- JsonDeserializer.cs
- Int64.cs
- CodeNamespaceImportCollection.cs
- BufferModeSettings.cs
- InstalledVoice.cs
- FileLogRecordEnumerator.cs
- PageRanges.cs
- EventLogPermissionAttribute.cs
- Rotation3DAnimation.cs
- GenericPrincipal.cs
- HierarchicalDataTemplate.cs
- ResourceDictionary.cs
- EventSource.cs
- GridViewColumnCollectionChangedEventArgs.cs
- SQLInt64.cs
- HandleCollector.cs
- MemberMaps.cs
- XmlUtf8RawTextWriter.cs
- UnsafeNetInfoNativeMethods.cs
- TabPanel.cs
- ListViewItemCollectionEditor.cs
- WhiteSpaceTrimStringConverter.cs
- CompoundFileStorageReference.cs
- IConvertible.cs
- Ipv6Element.cs
- FlowPosition.cs
- ImportCatalogPart.cs
- DockPanel.cs
- ObjectManager.cs
- CngKeyCreationParameters.cs
- Cursor.cs
- Color.cs
- MarkupWriter.cs
- SafeHandles.cs
- DesignerDataTableBase.cs
- TextPenaltyModule.cs
- StorageConditionPropertyMapping.cs
- LogicalChannel.cs
- IndentedTextWriter.cs
- CanonicalFontFamilyReference.cs
- AutomationPattern.cs
- TreeNodeEventArgs.cs