Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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
- TemplatedWizardStep.cs
- ClientSideQueueItem.cs
- SessionEndingCancelEventArgs.cs
- XmlWriterDelegator.cs
- cookiecontainer.cs
- GridViewColumnCollectionChangedEventArgs.cs
- NavigationProperty.cs
- CapabilitiesUse.cs
- TypeConstant.cs
- ChannelBinding.cs
- BooleanStorage.cs
- OpenFileDialog.cs
- ErrorStyle.cs
- ModelTreeEnumerator.cs
- DoWhileDesigner.xaml.cs
- Main.cs
- XmlSchemaAll.cs
- Clipboard.cs
- FtpWebRequest.cs
- WindowHideOrCloseTracker.cs
- BlobPersonalizationState.cs
- SecureEnvironment.cs
- SqlClientPermission.cs
- ScriptComponentDescriptor.cs
- SqlBuilder.cs
- XmlSchemaExternal.cs
- XsltException.cs
- WebBrowserUriTypeConverter.cs
- ProfileGroupSettingsCollection.cs
- DecoderBestFitFallback.cs
- CompiledIdentityConstraint.cs
- ValueTypeFixupInfo.cs
- TextClipboardData.cs
- DesignTimeVisibleAttribute.cs
- AutomationTextAttribute.cs
- RegexStringValidator.cs
- XhtmlBasicTextViewAdapter.cs
- GlobalProxySelection.cs
- UInt64.cs
- WebPartConnectionsDisconnectVerb.cs
- XmlAnyElementAttributes.cs
- Int32CollectionValueSerializer.cs
- HtmlShimManager.cs
- loginstatus.cs
- DataControlField.cs
- StreamGeometry.cs
- FactoryId.cs
- RuntimeResourceSet.cs
- InputLangChangeRequestEvent.cs
- ManifestSignedXml.cs
- InstancePersistenceException.cs
- GrowingArray.cs
- DataGridState.cs
- CertificateManager.cs
- CheckedPointers.cs
- WpfWebRequestHelper.cs
- TagMapInfo.cs
- VideoDrawing.cs
- ToolboxComponentsCreatingEventArgs.cs
- ListViewAutomationPeer.cs
- LocationReference.cs
- CultureInfoConverter.cs
- WebPartEditorApplyVerb.cs
- ObjectQuery.cs
- ISAPIRuntime.cs
- FrameworkElementFactory.cs
- GridView.cs
- GridViewItemAutomationPeer.cs
- Native.cs
- GroupJoinQueryOperator.cs
- DefaultAssemblyResolver.cs
- NavigationWindowAutomationPeer.cs
- Transform.cs
- ListBindingConverter.cs
- Configuration.cs
- FunctionUpdateCommand.cs
- ValidationEventArgs.cs
- Transform3DGroup.cs
- DataContractSerializerServiceBehavior.cs
- Thumb.cs
- CommandBinding.cs
- XmlC14NWriter.cs
- CharacterBuffer.cs
- BitVec.cs
- HwndHostAutomationPeer.cs
- XmlCompatibilityReader.cs
- ParameterBinding.cs
- ImageSourceTypeConverter.cs
- IFormattable.cs
- SiteMapNodeItem.cs
- DocumentXmlWriter.cs
- BrowserDefinition.cs
- DefaultMemberAttribute.cs
- ConfigXmlSignificantWhitespace.cs
- FilterableAttribute.cs
- XPathScanner.cs
- DrawingContextDrawingContextWalker.cs
- ResXResourceReader.cs
- TreeNodeCollection.cs
- Type.cs