Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataSet / System / Data / SortExpressionBuilder.cs / 1305376 / SortExpressionBuilder.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //[....] //----------------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Collections; using System.Text; using System.Data; using System.Linq; using System.Diagnostics; namespace System.Data { ////// This class represents a combined sort expression build using mutiple sort expressions. /// ///internal class SortExpressionBuilder : IComparer > { /** * This class ensures multiple orderby/thenbys are handled correctly. Its semantics is as follows: * * Query 1: * orderby a * thenby b * orderby c * orderby d * thenby e * * is equivalent to: * * Query 2: * orderby d * thenby e * thenby c * thenby a * thenby b * **/ //Selectors and comparers are mapped using the index in the list. //E.g: _comparers[i] is used with _selectors[i] LinkedList
> _selectors = new LinkedList >(); LinkedList > _comparers = new LinkedList >(); LinkedListNode > _currentSelector = null; LinkedListNode > _currentComparer = null; /// /// Adds a sorting selector/comparer in the correct order /// internal void Add(FunckeySelector, Comparison
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CharAnimationBase.cs
- PeerNearMe.cs
- JavaScriptSerializer.cs
- PolicyValidationException.cs
- DataControlPagerLinkButton.cs
- AdapterUtil.cs
- SettingsProviderCollection.cs
- RestClientProxyHandler.cs
- PipelineModuleStepContainer.cs
- DataContractSerializerSection.cs
- RegexCaptureCollection.cs
- XslTransform.cs
- DocumentEventArgs.cs
- _TransmitFileOverlappedAsyncResult.cs
- BinaryOperationBinder.cs
- BindingsCollection.cs
- SqlReferenceCollection.cs
- CachedBitmap.cs
- PtsCache.cs
- PolyLineSegment.cs
- EntryPointNotFoundException.cs
- Root.cs
- MenuItemStyle.cs
- ErrorFormatterPage.cs
- OracleConnectionStringBuilder.cs
- basecomparevalidator.cs
- OperatingSystem.cs
- KeySplineConverter.cs
- ServiceContractViewControl.cs
- XmlDataSourceView.cs
- QueryCursorEventArgs.cs
- BrowserCapabilitiesCompiler.cs
- UIPermission.cs
- ProjectionCamera.cs
- ContainerAction.cs
- XmlComment.cs
- RadioButton.cs
- Interlocked.cs
- CorrelationManager.cs
- ServicePointManager.cs
- FunctionUpdateCommand.cs
- GifBitmapDecoder.cs
- DynamicDataResources.Designer.cs
- Array.cs
- DocumentReferenceCollection.cs
- EditorPartCollection.cs
- XmlILIndex.cs
- TreeViewImageKeyConverter.cs
- COAUTHINFO.cs
- ComponentResourceManager.cs
- ManipulationStartedEventArgs.cs
- TextServicesDisplayAttribute.cs
- mediaclock.cs
- StorageSetMapping.cs
- QilInvokeLateBound.cs
- StateChangeEvent.cs
- ObjRef.cs
- RouteTable.cs
- NetSectionGroup.cs
- Reference.cs
- TextServicesCompartmentEventSink.cs
- GetWinFXPath.cs
- Transform3DCollection.cs
- ParsedAttributeCollection.cs
- JavaScriptObjectDeserializer.cs
- infer.cs
- CollectionContainer.cs
- QuaternionRotation3D.cs
- WebBrowserUriTypeConverter.cs
- coordinator.cs
- Misc.cs
- PriorityItem.cs
- ContractMethodParameterInfo.cs
- ProgressBarBrushConverter.cs
- DetailsViewRow.cs
- SqlTypesSchemaImporter.cs
- ColorConvertedBitmap.cs
- TrackingMemoryStreamFactory.cs
- srgsitem.cs
- UnsafeNativeMethods.cs
- NamedPipeDuplicateContext.cs
- DetailsViewInsertedEventArgs.cs
- SettingsPropertyCollection.cs
- PropertyGridView.cs
- Error.cs
- SqlClientMetaDataCollectionNames.cs
- PageFunction.cs
- AssertSection.cs
- CommandBinding.cs
- Mutex.cs
- RelatedView.cs
- PasswordValidationException.cs
- SmiEventStream.cs
- PageCatalogPart.cs
- SurrogateSelector.cs
- CopyCodeAction.cs
- XPathDocumentIterator.cs
- TrustLevelCollection.cs
- SmtpException.cs
- DataRecordObjectView.cs