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
- TemplateModeChangedEventArgs.cs
- WinEventHandler.cs
- DynamicILGenerator.cs
- ExpressionBindingCollection.cs
- Geometry3D.cs
- TextTreeExtractElementUndoUnit.cs
- MetadataArtifactLoaderFile.cs
- EventProviderBase.cs
- ValueUnavailableException.cs
- OleDbError.cs
- PassportAuthenticationModule.cs
- PageAsyncTask.cs
- DetailsViewRow.cs
- CodeParameterDeclarationExpression.cs
- ConnectionStringSettings.cs
- FilteredXmlReader.cs
- XPathDocument.cs
- LocalizabilityAttribute.cs
- ResourceExpression.cs
- EventProviderWriter.cs
- DataPagerCommandEventArgs.cs
- ListControlBoundActionList.cs
- MimePart.cs
- DataRow.cs
- Scene3D.cs
- Group.cs
- StateMachineSubscription.cs
- IMembershipProvider.cs
- SqlDataSourceDesigner.cs
- SponsorHelper.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- HandlerMappingMemo.cs
- UnknownBitmapDecoder.cs
- AdjustableArrowCap.cs
- ControlUtil.cs
- MeasurementDCInfo.cs
- DeviceContext2.cs
- TextStore.cs
- ButtonBaseAutomationPeer.cs
- HtmlTableCellCollection.cs
- ObjectListDataBindEventArgs.cs
- TrustLevel.cs
- HMACMD5.cs
- xml.cs
- FileReservationCollection.cs
- MailBnfHelper.cs
- Point3DAnimationUsingKeyFrames.cs
- TrustDriver.cs
- SessionStateUtil.cs
- ValidationEventArgs.cs
- SHA1.cs
- Missing.cs
- OleDbDataAdapter.cs
- AliasedExpr.cs
- PeerApplicationLaunchInfo.cs
- FormViewCommandEventArgs.cs
- TextBoxAutoCompleteSourceConverter.cs
- PropertyEmitterBase.cs
- DocumentApplication.cs
- LogReserveAndAppendState.cs
- _ProxyChain.cs
- RecordBuilder.cs
- AdRotator.cs
- StyleTypedPropertyAttribute.cs
- Adorner.cs
- SafeHandles.cs
- LogicalChannelCollection.cs
- MetadataArtifactLoaderResource.cs
- PointLightBase.cs
- HtmlLink.cs
- VisualProxy.cs
- Set.cs
- TemplateControlBuildProvider.cs
- DataTableReaderListener.cs
- TitleStyle.cs
- DoWorkEventArgs.cs
- LinearQuaternionKeyFrame.cs
- DataException.cs
- ClipboardProcessor.cs
- BinaryFormatterWriter.cs
- TdsParserSafeHandles.cs
- UnsafeNativeMethods.cs
- StyleBamlTreeBuilder.cs
- Stackframe.cs
- DataGridViewMethods.cs
- Root.cs
- MediaElementAutomationPeer.cs
- Brushes.cs
- WinEventQueueItem.cs
- DispatcherEventArgs.cs
- SqlDataReaderSmi.cs
- DataGridViewRowCollection.cs
- WinOEToolBoxItem.cs
- NullableDecimalMinMaxAggregationOperator.cs
- FileUpload.cs
- DrawToolTipEventArgs.cs
- FontUnitConverter.cs
- BookmarkWorkItem.cs
- MenuItemStyleCollectionEditor.cs
- ipaddressinformationcollection.cs