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
- HttpCapabilitiesSectionHandler.cs
- PrintPageEvent.cs
- RadioButtonFlatAdapter.cs
- PluralizationService.cs
- TextEditorParagraphs.cs
- MaterializeFromAtom.cs
- FixedPageProcessor.cs
- LoginCancelEventArgs.cs
- TextComposition.cs
- OracleInternalConnection.cs
- ToolboxDataAttribute.cs
- StrokeFIndices.cs
- LifetimeServices.cs
- ClientApiGenerator.cs
- CodeStatement.cs
- MultipartIdentifier.cs
- TrackingExtract.cs
- RequiredAttributeAttribute.cs
- PrivacyNoticeBindingElement.cs
- GacUtil.cs
- HttpModulesSection.cs
- TransformProviderWrapper.cs
- CqlBlock.cs
- RegexTypeEditor.cs
- ParallelEnumerable.cs
- TreeView.cs
- RawMouseInputReport.cs
- ExceptionUtil.cs
- LifetimeServices.cs
- UnorderedHashRepartitionStream.cs
- ClientData.cs
- WSHttpBindingCollectionElement.cs
- LayoutEditorPart.cs
- ContentPresenter.cs
- EntitySqlQueryBuilder.cs
- MeasureData.cs
- DispatcherFrame.cs
- DataServiceBehavior.cs
- MenuItemStyleCollection.cs
- PermissionListSet.cs
- ReflectionServiceProvider.cs
- TimelineGroup.cs
- ToolZone.cs
- TableLayoutColumnStyleCollection.cs
- WhitespaceReader.cs
- StaticContext.cs
- GroupItemAutomationPeer.cs
- ComboBoxRenderer.cs
- DataPagerField.cs
- ThreadInterruptedException.cs
- WizardPanel.cs
- OpenTypeLayoutCache.cs
- KeyValuePairs.cs
- DesignerSerializerAttribute.cs
- _SingleItemRequestCache.cs
- DocumentPageView.cs
- Reference.cs
- CreateSequenceResponse.cs
- MonikerProxyAttribute.cs
- ThicknessAnimation.cs
- MobilePage.cs
- DrawingGroup.cs
- DocumentXmlWriter.cs
- CompilerError.cs
- RuntimeWrappedException.cs
- DataGridViewCellConverter.cs
- ADConnectionHelper.cs
- activationcontext.cs
- CaseInsensitiveHashCodeProvider.cs
- DataGridViewCellStyle.cs
- ButtonBase.cs
- PerfCounterSection.cs
- Point3DAnimationUsingKeyFrames.cs
- DispatcherExceptionEventArgs.cs
- XmlReaderDelegator.cs
- UnaryQueryOperator.cs
- KeyGesture.cs
- LinearQuaternionKeyFrame.cs
- DataGridViewCellStyleContentChangedEventArgs.cs
- CompilationRelaxations.cs
- ResourcesBuildProvider.cs
- Assert.cs
- SoapCodeExporter.cs
- CommonDialog.cs
- TableRowGroupCollection.cs
- DummyDataSource.cs
- RelatedView.cs
- RuleSetBrowserDialog.cs
- XmlSerializerNamespaces.cs
- DownloadProgressEventArgs.cs
- DependencyObject.cs
- HtmlInputText.cs
- DataError.cs
- SvcMapFile.cs
- HTTPNotFoundHandler.cs
- NavigationFailedEventArgs.cs
- DelegateSerializationHolder.cs
- MethodInfo.cs
- DataColumnCollection.cs
- SetStoryboardSpeedRatio.cs