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
- MimeBasePart.cs
- GradientStop.cs
- Rotation3DAnimationBase.cs
- Vector3DCollectionValueSerializer.cs
- QueryCoreOp.cs
- QueryStringParameter.cs
- EventSetter.cs
- DateTimeOffset.cs
- ToolStripKeyboardHandlingService.cs
- NonParentingControl.cs
- CodeBlockBuilder.cs
- SemaphoreFullException.cs
- UInt32Converter.cs
- CfgParser.cs
- HitTestWithGeometryDrawingContextWalker.cs
- Rectangle.cs
- DataGridViewHitTestInfo.cs
- ScrollChrome.cs
- StartFileNameEditor.cs
- Logging.cs
- ColorKeyFrameCollection.cs
- RoutedEventHandlerInfo.cs
- SqlBulkCopyColumnMapping.cs
- ExpandCollapseProviderWrapper.cs
- EntityDataSourceUtil.cs
- RolePrincipal.cs
- DataAdapter.cs
- DropShadowBitmapEffect.cs
- SelectorItemAutomationPeer.cs
- PriorityRange.cs
- Stroke2.cs
- HelpEvent.cs
- BinaryConverter.cs
- PrePrepareMethodAttribute.cs
- TimerEventSubscriptionCollection.cs
- EntityDataSourceStatementEditor.cs
- UseLicense.cs
- DesignerAdapterAttribute.cs
- DocumentViewerAutomationPeer.cs
- TriState.cs
- HtmlInputReset.cs
- DesignerCommandSet.cs
- CacheMemory.cs
- CacheSection.cs
- MachineKeySection.cs
- InputLangChangeRequestEvent.cs
- DataGridAddNewRow.cs
- StringComparer.cs
- EntityDataReader.cs
- PropertyNames.cs
- DependencyPropertyChangedEventArgs.cs
- SystemFonts.cs
- XXXOnTypeBuilderInstantiation.cs
- CompositeControl.cs
- ChtmlPageAdapter.cs
- MatrixAnimationBase.cs
- ArraySubsetEnumerator.cs
- WindowsFormsSectionHandler.cs
- X509Certificate2.cs
- BindingList.cs
- initElementDictionary.cs
- XmlILCommand.cs
- Int64AnimationUsingKeyFrames.cs
- ConfigurationSchemaErrors.cs
- OptimisticConcurrencyException.cs
- MSAAWinEventWrap.cs
- DerivedKeySecurityToken.cs
- QilDataSource.cs
- basecomparevalidator.cs
- GridItemPattern.cs
- CharacterMetricsDictionary.cs
- SharedTcpTransportManager.cs
- CodeMemberMethod.cs
- DataGridHeaderBorder.cs
- TransactionInterop.cs
- GcHandle.cs
- ValidationHelper.cs
- ImpersonateTokenRef.cs
- XPathMultyIterator.cs
- MessageSmuggler.cs
- CustomCredentialPolicy.cs
- sitestring.cs
- OpacityConverter.cs
- PowerModeChangedEventArgs.cs
- SingleBodyParameterMessageFormatter.cs
- TTSEngineProxy.cs
- WindowsStatusBar.cs
- CodeSnippetTypeMember.cs
- StrokeFIndices.cs
- SystemColors.cs
- GridViewCancelEditEventArgs.cs
- Listener.cs
- GPPOINTF.cs
- TextRunTypographyProperties.cs
- LayoutDump.cs
- SystemThemeKey.cs
- Missing.cs
- ThicknessAnimation.cs
- State.cs
- log.cs