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
- XmlLoader.cs
- EntityPropertyMappingAttribute.cs
- PublisherIdentityPermission.cs
- Overlapped.cs
- SafeFindHandle.cs
- BindingBase.cs
- PerfCounters.cs
- WindowsFormsSectionHandler.cs
- MaterialCollection.cs
- BulletedListDesigner.cs
- MultipartContentParser.cs
- DbProviderFactoriesConfigurationHandler.cs
- ConditionalWeakTable.cs
- DynamicILGenerator.cs
- DropShadowEffect.cs
- NotificationContext.cs
- WebPartDisplayMode.cs
- ComplusEndpointConfigContainer.cs
- PopupRootAutomationPeer.cs
- CompositionTarget.cs
- FontCollection.cs
- StylusPointProperties.cs
- PhysicalFontFamily.cs
- XmlAutoDetectWriter.cs
- UnknownBitmapEncoder.cs
- HelloOperationAsyncResult.cs
- EnvelopedSignatureTransform.cs
- NullableDecimalMinMaxAggregationOperator.cs
- LinqDataSourceContextData.cs
- FragmentQueryProcessor.cs
- HtmlTable.cs
- BookmarkScopeManager.cs
- CodeAttributeArgument.cs
- OleStrCAMarshaler.cs
- SchemaDeclBase.cs
- FilteredDataSetHelper.cs
- ValueUtilsSmi.cs
- StrokeIntersection.cs
- ReplacementText.cs
- MailAddressCollection.cs
- safelinkcollection.cs
- ReferentialConstraint.cs
- SiteMap.cs
- MiniModule.cs
- WorkflowItemsPresenter.cs
- XmlElement.cs
- EntityChangedParams.cs
- AccessedThroughPropertyAttribute.cs
- TemplateColumn.cs
- ChildDocumentBlock.cs
- FilteredReadOnlyMetadataCollection.cs
- CodeMethodMap.cs
- OuterGlowBitmapEffect.cs
- SQLStringStorage.cs
- Light.cs
- BrowserTree.cs
- TextInfo.cs
- OleDbSchemaGuid.cs
- NameGenerator.cs
- ExpressionBindings.cs
- DataGridViewRowStateChangedEventArgs.cs
- RowToParametersTransformer.cs
- MenuItemAutomationPeer.cs
- DbConnectionPool.cs
- COM2EnumConverter.cs
- Evidence.cs
- GridLength.cs
- SafePEFileHandle.cs
- PreviewPageInfo.cs
- ServiceDebugElement.cs
- Baml6Assembly.cs
- LoadItemsEventArgs.cs
- MDIWindowDialog.cs
- TextEditorLists.cs
- FaultCode.cs
- XmlWrappingReader.cs
- XNameConverter.cs
- PtsPage.cs
- BinaryObjectReader.cs
- StdRegProviderWrapper.cs
- WebResponse.cs
- ImmComposition.cs
- SQlBooleanStorage.cs
- SortedDictionary.cs
- TransformerTypeCollection.cs
- RadioButtonList.cs
- EncodingNLS.cs
- GridViewRowPresenterBase.cs
- LockCookie.cs
- PreservationFileWriter.cs
- CodeTypeReferenceExpression.cs
- ContextMarshalException.cs
- QuestionEventArgs.cs
- Msec.cs
- PageClientProxyGenerator.cs
- ManagementOptions.cs
- OdbcConnectionString.cs
- SqlInfoMessageEvent.cs
- ColumnCollection.cs
- ObjectItemConventionAssemblyLoader.cs