Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataEntity / System / Data / SqlClient / SqlGen / JoinSymbol.cs / 2 / JoinSymbol.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....], [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Text; using System.Data.SqlClient; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees; namespace System.Data.SqlClient.SqlGen { ////// A Join symbol is a special kind of Symbol. /// It has to carry additional information /// internal sealed class JoinSymbol : Symbol { private List///
/// /// All the lists are set exactly once, and then used for lookups/enumerated. ///- ColumnList for the list of columns in the select clause if this /// symbol represents a sql select statement. This is set by
///. - ExtentList is the list of extents in the select clause.
///- FlattenedExtentList - if the Join has multiple extents flattened at the /// top level, we need this information to ensure that extent aliases are renamed /// correctly in
///- NameToExtent has all the extents in ExtentList as a dictionary. /// This is used by
///to flatten /// record accesses. - IsNestedJoin - is used to determine whether a JoinSymbol is an /// ordinary join symbol, or one that has a corresponding SqlSelectStatement.
///columnList; internal List ColumnList { get { if (null == columnList) { columnList = new List (); } return columnList; } set { columnList = value; } } private List extentList; internal List ExtentList { get { return extentList; } } private List flattenedExtentList; internal List FlattenedExtentList { get { if (null == flattenedExtentList) { flattenedExtentList = new List (); } return flattenedExtentList; } set { flattenedExtentList = value; } } private Dictionary nameToExtent; internal Dictionary NameToExtent { get { return nameToExtent; } } private bool isNestedJoin; internal bool IsNestedJoin { get { return isNestedJoin; } set { isNestedJoin = value; } } public JoinSymbol(string name, TypeUsage type, List extents) : base(name, type) { extentList = new List (extents.Count); nameToExtent = new Dictionary (extents.Count, StringComparer.OrdinalIgnoreCase); foreach (Symbol symbol in extents) { this.nameToExtent[symbol.Name] = symbol; this.ExtentList.Add(symbol); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....], [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Text; using System.Data.SqlClient; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees; namespace System.Data.SqlClient.SqlGen { ////// A Join symbol is a special kind of Symbol. /// It has to carry additional information /// internal sealed class JoinSymbol : Symbol { private List///
/// /// All the lists are set exactly once, and then used for lookups/enumerated. ///- ColumnList for the list of columns in the select clause if this /// symbol represents a sql select statement. This is set by
///. - ExtentList is the list of extents in the select clause.
///- FlattenedExtentList - if the Join has multiple extents flattened at the /// top level, we need this information to ensure that extent aliases are renamed /// correctly in
///- NameToExtent has all the extents in ExtentList as a dictionary. /// This is used by
///to flatten /// record accesses. - IsNestedJoin - is used to determine whether a JoinSymbol is an /// ordinary join symbol, or one that has a corresponding SqlSelectStatement.
///columnList; internal List ColumnList { get { if (null == columnList) { columnList = new List (); } return columnList; } set { columnList = value; } } private List extentList; internal List ExtentList { get { return extentList; } } private List flattenedExtentList; internal List FlattenedExtentList { get { if (null == flattenedExtentList) { flattenedExtentList = new List (); } return flattenedExtentList; } set { flattenedExtentList = value; } } private Dictionary nameToExtent; internal Dictionary NameToExtent { get { return nameToExtent; } } private bool isNestedJoin; internal bool IsNestedJoin { get { return isNestedJoin; } set { isNestedJoin = value; } } public JoinSymbol(string name, TypeUsage type, List extents) : base(name, type) { extentList = new List (extents.Count); nameToExtent = new Dictionary (extents.Count, StringComparer.OrdinalIgnoreCase); foreach (Symbol symbol in extents) { this.nameToExtent[symbol.Name] = symbol; this.ExtentList.Add(symbol); } } } } // 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
- LowerCaseStringConverter.cs
- AdornerHitTestResult.cs
- ValidatingReaderNodeData.cs
- MarkupObject.cs
- HostProtectionPermission.cs
- XmlDomTextWriter.cs
- SamlConstants.cs
- TrustLevelCollection.cs
- CodeTypeConstructor.cs
- ScrollItemPattern.cs
- SapiRecognizer.cs
- HtmlElementErrorEventArgs.cs
- ConfigXmlSignificantWhitespace.cs
- MaskPropertyEditor.cs
- RawStylusInputReport.cs
- DataGridViewRowHeightInfoPushedEventArgs.cs
- WaitHandle.cs
- HtmlHistory.cs
- autovalidator.cs
- UserMapPath.cs
- IdentityReference.cs
- _Semaphore.cs
- InfoCardProofToken.cs
- DataGridClipboardCellContent.cs
- ComMethodElement.cs
- CommonGetThemePartSize.cs
- StorageScalarPropertyMapping.cs
- CommandValueSerializer.cs
- DateTime.cs
- Int16AnimationBase.cs
- NullableDecimalAverageAggregationOperator.cs
- AttachInfo.cs
- SchemaNames.cs
- LinkUtilities.cs
- PerformanceCounters.cs
- ZipIOLocalFileBlock.cs
- ModelMemberCollection.cs
- FullTextState.cs
- BuildProviderUtils.cs
- JsonDataContract.cs
- DataGridViewToolTip.cs
- MenuStrip.cs
- CompoundFileReference.cs
- StylusPointProperties.cs
- ScriptManager.cs
- UInt16.cs
- SchemaImporter.cs
- EntryPointNotFoundException.cs
- WindowsStartMenu.cs
- KeyFrames.cs
- DateTimeSerializationSection.cs
- RuntimeConfig.cs
- BitmapEffectDrawing.cs
- XmlTextAttribute.cs
- PageHandlerFactory.cs
- nulltextcontainer.cs
- LocatorPartList.cs
- DesignerRegionCollection.cs
- HealthMonitoringSection.cs
- ParameterModifier.cs
- Misc.cs
- TickBar.cs
- Logging.cs
- LoginNameDesigner.cs
- SerialReceived.cs
- WmlTextBoxAdapter.cs
- CollectionChangedEventManager.cs
- EventDescriptor.cs
- FontFamily.cs
- SoapEnumAttribute.cs
- ExpressionList.cs
- M3DUtil.cs
- MappableObjectManager.cs
- XPathNodeList.cs
- PeerServiceMessageContracts.cs
- MimeMultiPart.cs
- ObjectComplexPropertyMapping.cs
- PagesChangedEventArgs.cs
- ValidationUtility.cs
- SqlWebEventProvider.cs
- UserControl.cs
- SerializerProvider.cs
- IERequestCache.cs
- SessionMode.cs
- InstanceOwner.cs
- CodeCatchClause.cs
- NativeMethods.cs
- X509Utils.cs
- ClickablePoint.cs
- SystemWebCachingSectionGroup.cs
- Annotation.cs
- FormViewUpdatedEventArgs.cs
- SapiGrammar.cs
- dbenumerator.cs
- XPathEmptyIterator.cs
- EnumerableRowCollection.cs
- ParseElement.cs
- PartialCachingControl.cs
- BitmapFrame.cs
- DataGridColumnsPage.cs