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
- ControlParameter.cs
- EpmCustomContentWriterNodeData.cs
- SiteMapDataSourceDesigner.cs
- FixedDocumentPaginator.cs
- NumberSubstitution.cs
- ToolStripDropDownButton.cs
- ControlBuilderAttribute.cs
- NavigationProperty.cs
- ListInitExpression.cs
- XhtmlCssHandler.cs
- CheckBox.cs
- JsonReaderWriterFactory.cs
- EventHandlers.cs
- GraphicsPathIterator.cs
- TextDecorationCollection.cs
- UnsafeNativeMethods.cs
- DateTimeOffsetAdapter.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- BooleanStorage.cs
- ListViewInsertedEventArgs.cs
- ConfigurationStrings.cs
- ProfileService.cs
- SegmentInfo.cs
- Classification.cs
- BuildResult.cs
- MessageFormatterConverter.cs
- PrintDocument.cs
- BackStopAuthenticationModule.cs
- RootBrowserWindowProxy.cs
- SettingsAttributes.cs
- unsafenativemethodstextservices.cs
- MergeFailedEvent.cs
- InvokeMethodDesigner.xaml.cs
- MarkupExtensionParser.cs
- TextFormatterHost.cs
- InvariantComparer.cs
- MediaTimeline.cs
- Label.cs
- TableCellsCollectionEditor.cs
- DataKey.cs
- ExpressionTable.cs
- HttpGetServerProtocol.cs
- SerializationSectionGroup.cs
- SdlChannelSink.cs
- KeyValueInternalCollection.cs
- RsaEndpointIdentity.cs
- DocumentGrid.cs
- BStrWrapper.cs
- TextEndOfSegment.cs
- ScriptModule.cs
- InputMethodStateTypeInfo.cs
- XmlParserContext.cs
- UnorderedHashRepartitionStream.cs
- WorkflowTransactionOptions.cs
- ByteStreamMessageUtility.cs
- ToolStripItemCollection.cs
- JavaScriptString.cs
- CodeArgumentReferenceExpression.cs
- FreezableOperations.cs
- CharacterString.cs
- DependencyObject.cs
- FontFamily.cs
- DataListItemCollection.cs
- Pts.cs
- XmlChoiceIdentifierAttribute.cs
- ThreadExceptionDialog.cs
- ExtensionDataObject.cs
- DocumentOrderComparer.cs
- DesignDataSource.cs
- ConsumerConnectionPointCollection.cs
- WizardPanel.cs
- PageThemeCodeDomTreeGenerator.cs
- DocumentCollection.cs
- ScrollViewer.cs
- MimeObjectFactory.cs
- X509Chain.cs
- PlatformCulture.cs
- TypeDependencyAttribute.cs
- Misc.cs
- SqlConnectionPoolGroupProviderInfo.cs
- PropertyCondition.cs
- ResourceType.cs
- XPathPatternBuilder.cs
- InfoCardRSAOAEPKeyExchangeFormatter.cs
- BinaryFormatter.cs
- ConfigXmlSignificantWhitespace.cs
- DataGridDetailsPresenterAutomationPeer.cs
- WsdlBuildProvider.cs
- AtomParser.cs
- DataGridColumnHeader.cs
- PagesSection.cs
- TextRangeEdit.cs
- SamlSubjectStatement.cs
- Reference.cs
- SqlResolver.cs
- AnimationTimeline.cs
- HandleRef.cs
- XamlVector3DCollectionSerializer.cs
- SqlUnionizer.cs
- IndentedWriter.cs