Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / SqlClient / SqlGen / JoinSymbol.cs / 1 / 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
- UniqueConstraint.cs
- RemoteWebConfigurationHostStream.cs
- StreamUpgradeBindingElement.cs
- MatrixAnimationUsingKeyFrames.cs
- ExpressionBuilder.cs
- TableCellCollection.cs
- RuleValidation.cs
- WindowsListViewScroll.cs
- XmlKeywords.cs
- Triplet.cs
- HttpRequest.cs
- BCryptHashAlgorithm.cs
- AutoResetEvent.cs
- FontFamily.cs
- ElapsedEventArgs.cs
- ImageButton.cs
- WSFederationHttpSecurityElement.cs
- TextSelectionHelper.cs
- sqlinternaltransaction.cs
- OdbcPermission.cs
- BaseCollection.cs
- EFDataModelProvider.cs
- UrlParameterWriter.cs
- DynamicPropertyReader.cs
- ProviderConnectionPointCollection.cs
- TableLayoutCellPaintEventArgs.cs
- SQLMoney.cs
- OleDbCommand.cs
- RenderingEventArgs.cs
- CapacityStreamGeometryContext.cs
- EventMemberCodeDomSerializer.cs
- DataExpression.cs
- ButtonBase.cs
- _UriSyntax.cs
- HtmlMobileTextWriter.cs
- AdjustableArrowCap.cs
- BindableAttribute.cs
- StringComparer.cs
- MergeFailedEvent.cs
- NonValidatingSecurityTokenAuthenticator.cs
- DefaultSerializationProviderAttribute.cs
- Icon.cs
- ObjectDataSourceEventArgs.cs
- SecurityException.cs
- XamlPathDataSerializer.cs
- XmlValueConverter.cs
- MetadataAssemblyHelper.cs
- Schema.cs
- ChannelEndpointElementCollection.cs
- WizardStepBase.cs
- Camera.cs
- SingleObjectCollection.cs
- ScriptReferenceBase.cs
- DataGridViewSelectedCellCollection.cs
- XmlQueryContext.cs
- Region.cs
- BatchParser.cs
- AppDomainFactory.cs
- AttributeCollection.cs
- StringFunctions.cs
- ObjectComplexPropertyMapping.cs
- EntityDataSourceChangedEventArgs.cs
- PropertyReference.cs
- HighContrastHelper.cs
- Rights.cs
- EventsTab.cs
- ReferenceConverter.cs
- ConditionBrowserDialog.cs
- AxisAngleRotation3D.cs
- ColorConvertedBitmap.cs
- DesignBindingPropertyDescriptor.cs
- HttpServerUtilityBase.cs
- OdbcUtils.cs
- ExternalException.cs
- PropertyEmitter.cs
- SelectorAutomationPeer.cs
- IconConverter.cs
- ExceptionUtil.cs
- MemoryFailPoint.cs
- Add.cs
- PermissionRequestEvidence.cs
- DecimalConverter.cs
- EventToken.cs
- BaseUriHelper.cs
- AnnotationResourceChangedEventArgs.cs
- DataControlCommands.cs
- TextTreeObjectNode.cs
- TaskResultSetter.cs
- QilGenerator.cs
- PagePropertiesChangingEventArgs.cs
- ListenerHandler.cs
- GraphicsPathIterator.cs
- HttpCacheParams.cs
- TypeUtils.cs
- MimeMapping.cs
- ListViewGroupItemCollection.cs
- CaseInsensitiveHashCodeProvider.cs
- WindowsRebar.cs
- DebugInfo.cs
- MatchingStyle.cs