Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / XmlUtils / System / Xml / Xsl / Runtime / XmlIterators.cs / 1 / XmlIterators.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Xml; using System.Xml.XPath; using System.ComponentModel; namespace System.Xml.Xsl.Runtime { ////// Iterators that use containment to control a nested iterator return one of the following values from MoveNext(). /// [EditorBrowsable(EditorBrowsableState.Never)] public enum IteratorResult { NoMoreNodes, // Iteration is complete; there are no more nodes NeedInputNode, // The next node needs to be fetched from the contained iterator before iteration can continue HaveCurrentNode, // This iterator's Current property is set to the next node in the iteration }; ////// Tokenize a string containing IDREF values and deref the values in order to get a list of ID elements. /// [EditorBrowsable(EditorBrowsableState.Never)] public struct IdIterator { private XPathNavigator navCurrent; private string[] idrefs; private int idx; public void Create(XPathNavigator context, string value) { this.navCurrent = XmlQueryRuntime.SyncToNavigator(this.navCurrent, context); this.idrefs = XmlConvert.SplitString(value); this.idx = -1; } public bool MoveNext() { do { this.idx++; if (this.idx >= idrefs.Length) return false; } while (!this.navCurrent.MoveToId(this.idrefs[this.idx])); return true; } ////// Return the current result navigator. This is only defined after MoveNext() has returned true. /// public XPathNavigator Current { get { return this.navCurrent; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System; using System.Xml; using System.Xml.XPath; using System.ComponentModel; namespace System.Xml.Xsl.Runtime { ////// Iterators that use containment to control a nested iterator return one of the following values from MoveNext(). /// [EditorBrowsable(EditorBrowsableState.Never)] public enum IteratorResult { NoMoreNodes, // Iteration is complete; there are no more nodes NeedInputNode, // The next node needs to be fetched from the contained iterator before iteration can continue HaveCurrentNode, // This iterator's Current property is set to the next node in the iteration }; ////// Tokenize a string containing IDREF values and deref the values in order to get a list of ID elements. /// [EditorBrowsable(EditorBrowsableState.Never)] public struct IdIterator { private XPathNavigator navCurrent; private string[] idrefs; private int idx; public void Create(XPathNavigator context, string value) { this.navCurrent = XmlQueryRuntime.SyncToNavigator(this.navCurrent, context); this.idrefs = XmlConvert.SplitString(value); this.idx = -1; } public bool MoveNext() { do { this.idx++; if (this.idx >= idrefs.Length) return false; } while (!this.navCurrent.MoveToId(this.idrefs[this.idx])); return true; } ////// Return the current result navigator. This is only defined after MoveNext() has returned true. /// public XPathNavigator Current { get { return this.navCurrent; } } } } // 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
- AccessibleObject.cs
- Connector.cs
- NavigationEventArgs.cs
- ErrorHandler.cs
- ToolStripItemGlyph.cs
- MethodCallTranslator.cs
- DataControlButton.cs
- GenericsInstances.cs
- MatrixAnimationUsingPath.cs
- SpellCheck.cs
- BitmapInitialize.cs
- HttpStaticObjectsCollectionWrapper.cs
- CoreChannel.cs
- TypeConstant.cs
- Misc.cs
- AnimationLayer.cs
- InvalidOperationException.cs
- ToolStripRendererSwitcher.cs
- BaseCollection.cs
- MailAddressCollection.cs
- handlecollector.cs
- StrongNameIdentityPermission.cs
- ThreadSafeList.cs
- NodeInfo.cs
- AppDomainProtocolHandler.cs
- TypeUnloadedException.cs
- Wizard.cs
- Part.cs
- DataPagerField.cs
- LinearKeyFrames.cs
- DiscoveryClientProtocol.cs
- SchemaTypeEmitter.cs
- DataList.cs
- Scene3D.cs
- HttpProfileBase.cs
- ButtonDesigner.cs
- OracleCommandBuilder.cs
- GridViewRowEventArgs.cs
- Types.cs
- PublishLicense.cs
- KnownColorTable.cs
- QuestionEventArgs.cs
- WindowsListViewSubItem.cs
- Debug.cs
- NavigateUrlConverter.cs
- DesignerUtility.cs
- CodeNamespaceImport.cs
- DataBindingHandlerAttribute.cs
- ObjectPersistData.cs
- DesignOnlyAttribute.cs
- OleDbError.cs
- HttpCookieCollection.cs
- WebServiceHandlerFactory.cs
- DefaultBinder.cs
- RegularExpressionValidator.cs
- CorrelationManager.cs
- ToolStripItem.cs
- UInt64Storage.cs
- ErrorView.xaml.cs
- UIPermission.cs
- MouseWheelEventArgs.cs
- ToolboxService.cs
- HttpResponseInternalBase.cs
- DataContractJsonSerializerOperationFormatter.cs
- TableRowGroupCollection.cs
- IndexOutOfRangeException.cs
- WebPartEditorApplyVerb.cs
- RowUpdatingEventArgs.cs
- RequestReplyCorrelator.cs
- TemplateXamlParser.cs
- XmlEncoding.cs
- TextBoxBaseDesigner.cs
- ObjectDataSourceSelectingEventArgs.cs
- WaitForChangedResult.cs
- HttpCapabilitiesBase.cs
- SplitterCancelEvent.cs
- TextStore.cs
- XamlStream.cs
- XmlCodeExporter.cs
- SecurityUniqueId.cs
- PagerSettings.cs
- FtpRequestCacheValidator.cs
- AgileSafeNativeMemoryHandle.cs
- PaintValueEventArgs.cs
- File.cs
- MachineKey.cs
- DescendantOverDescendantQuery.cs
- UTF32Encoding.cs
- Win32PrintDialog.cs
- SqlGatherConsumedAliases.cs
- ISAPIWorkerRequest.cs
- StsCommunicationException.cs
- UrlParameterWriter.cs
- EdmRelationshipNavigationPropertyAttribute.cs
- SoapAttributes.cs
- StylusPointProperty.cs
- EntityCollection.cs
- MultipleViewPattern.cs
- SqlConnectionHelper.cs
- ToolStripControlHost.cs