Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / SqlClient / SqlGen / SymbolPair.cs / 1305376 / SymbolPair.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
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
{
///
/// The SymbolPair exists to solve the record flattening problem.
///
/// Consider a property expression D(v, "j3.j2.j1.a.x")
/// where v is a VarRef, j1, j2, j3 are joins, a is an extent and x is a columns.
/// This has to be translated eventually into {j'}.{x'}
///
/// The source field represents the outermost SqlStatement representing a join
/// expression (say j2) - this is always a Join symbol.
///
/// The column field keeps moving from one join symbol to the next, until it
/// stops at a non-join symbol.
///
/// This is returned by ,
/// but never makes it into a SqlBuilder.
///
class SymbolPair : ISqlFragment
{
public Symbol Source;
public Symbol Column;
public SymbolPair(Symbol source, Symbol column)
{
this.Source = source;
this.Column = column;
}
#region ISqlFragment Members
public void WriteSql(SqlWriter writer, SqlGenerator sqlGenerator)
{
// Symbol pair should never be part of a SqlBuilder.
Debug.Assert(false);
}
#endregion
}
}
// 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
- ModuleBuilderData.cs
- Line.cs
- ArithmeticException.cs
- LinqDataSourceEditData.cs
- ThreadInterruptedException.cs
- SolidColorBrush.cs
- DelayedRegex.cs
- VisualTreeHelper.cs
- ServiceContractViewControl.Designer.cs
- FixedTextContainer.cs
- Pen.cs
- WindowsFormsDesignerOptionService.cs
- IProvider.cs
- BindUriHelper.cs
- IndicCharClassifier.cs
- XmlNamespaceMappingCollection.cs
- SafeWaitHandle.cs
- PersonalizationAdministration.cs
- AQNBuilder.cs
- CheckableControlBaseAdapter.cs
- XsdValidatingReader.cs
- DataGridViewTextBoxEditingControl.cs
- ToolStripHighContrastRenderer.cs
- TransportListener.cs
- DefaultCommandConverter.cs
- OdbcDataReader.cs
- DependencyPropertyAttribute.cs
- ScrollBarRenderer.cs
- EdmProviderManifest.cs
- ColumnWidthChangedEvent.cs
- WpfGeneratedKnownTypes.cs
- AuthenticatedStream.cs
- WinFormsSecurity.cs
- UInt16Converter.cs
- RoutedCommand.cs
- ConfigXmlAttribute.cs
- SQLGuidStorage.cs
- ReachObjectContext.cs
- ProgressBarRenderer.cs
- MultiView.cs
- Matrix.cs
- AudioLevelUpdatedEventArgs.cs
- PropertyGridEditorPart.cs
- UnsafeNativeMethods.cs
- DataGridViewCheckBoxColumn.cs
- EdmScalarPropertyAttribute.cs
- OptimisticConcurrencyException.cs
- JulianCalendar.cs
- MultiBinding.cs
- TextFragmentEngine.cs
- StateMachineHelpers.cs
- ExtensionSimplifierMarkupObject.cs
- WeakReferenceKey.cs
- SystemInfo.cs
- BaseUriHelper.cs
- SyncOperationState.cs
- unsafenativemethodsother.cs
- Effect.cs
- EnumCodeDomSerializer.cs
- XmlSerializationGeneratedCode.cs
- HttpCookieCollection.cs
- ConnectionPoolRegistry.cs
- SynchronousChannel.cs
- SelectionEditor.cs
- DiscoveryExceptionDictionary.cs
- ChangeDirector.cs
- CodeDirectoryCompiler.cs
- ObfuscationAttribute.cs
- VisualStateChangedEventArgs.cs
- WindowsSysHeader.cs
- ConditionalAttribute.cs
- ContentControl.cs
- Filter.cs
- IpcChannelHelper.cs
- PaperSource.cs
- TextParagraphCache.cs
- NativeMethods.cs
- XmlSchemaRedefine.cs
- WorkflowMarkupElementEventArgs.cs
- EndpointConfigContainer.cs
- SchemaNotation.cs
- StandardOleMarshalObject.cs
- BasePropertyDescriptor.cs
- MatrixConverter.cs
- TextEditorContextMenu.cs
- basecomparevalidator.cs
- TimeSpan.cs
- SchemaObjectWriter.cs
- SqlFactory.cs
- SafeNativeMethods.cs
- SqlRowUpdatedEvent.cs
- ScrollProperties.cs
- OleDbInfoMessageEvent.cs
- RequiredFieldValidator.cs
- MimePart.cs
- ComplexTypeEmitter.cs
- FloaterBaseParaClient.cs
- EntityDataSourceChangedEventArgs.cs
- Positioning.cs
- MeshGeometry3D.cs