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
- Size.cs
- TextParagraphView.cs
- SettingsBindableAttribute.cs
- TextAnchor.cs
- Vector3DAnimation.cs
- TreeNodeStyleCollection.cs
- LocationUpdates.cs
- InkCollectionBehavior.cs
- TextClipboardData.cs
- SimpleRecyclingCache.cs
- QueryConverter.cs
- UnsafeNativeMethods.cs
- DigitalSignatureProvider.cs
- Rect.cs
- QueryOptionExpression.cs
- SourceElementsCollection.cs
- FormsAuthentication.cs
- CommandExpr.cs
- ConcurrentDictionary.cs
- CalculatedColumn.cs
- DataSourceDescriptorCollection.cs
- RemoteWebConfigurationHostStream.cs
- AxParameterData.cs
- DropShadowEffect.cs
- EnvelopeVersion.cs
- HttpWrapper.cs
- DeviceContext2.cs
- XmlBindingWorker.cs
- ManualResetEvent.cs
- OleDbConnectionFactory.cs
- DeclarativeCatalogPart.cs
- DataGridViewComboBoxColumnDesigner.cs
- XamlDesignerSerializationManager.cs
- TypeGeneratedEventArgs.cs
- MenuEventArgs.cs
- COM2PictureConverter.cs
- SelectionPatternIdentifiers.cs
- NumericUpDownAcceleration.cs
- GenericEnumerator.cs
- MimeObjectFactory.cs
- PersianCalendar.cs
- CryptoStream.cs
- DSASignatureFormatter.cs
- SqlExpander.cs
- URI.cs
- UntypedNullExpression.cs
- ToolStripComboBox.cs
- NTAccount.cs
- VisualTreeHelper.cs
- WindowsButton.cs
- Rect.cs
- DesignerProperties.cs
- FileDialogCustomPlace.cs
- FontNamesConverter.cs
- EncryptedKeyIdentifierClause.cs
- WmpBitmapEncoder.cs
- MetafileHeader.cs
- ItemCheckedEvent.cs
- WebPartUtil.cs
- ISO2022Encoding.cs
- HtmlHistory.cs
- Localizer.cs
- NotifyIcon.cs
- SafeMemoryMappedFileHandle.cs
- Types.cs
- OutputCacheSettings.cs
- SqlConnectionHelper.cs
- InstancePersistenceEvent.cs
- StreamWithDictionary.cs
- QueryConverter.cs
- CacheMemory.cs
- StylusDownEventArgs.cs
- NavigationWindow.cs
- Publisher.cs
- TableLayout.cs
- Misc.cs
- DispatcherObject.cs
- SchemaAttDef.cs
- WebPartMenuStyle.cs
- propertytag.cs
- AnnotationHelper.cs
- ExpressionEditorAttribute.cs
- AnnotationComponentManager.cs
- NativeMethods.cs
- PEFileEvidenceFactory.cs
- ListControlConvertEventArgs.cs
- ISO2022Encoding.cs
- XmlNodeList.cs
- PrivilegeNotHeldException.cs
- AnnotationObservableCollection.cs
- WebDescriptionAttribute.cs
- HtmlInputHidden.cs
- DateTimeValueSerializerContext.cs
- XmlSerializerFactory.cs
- StickyNoteHelper.cs
- SecUtil.cs
- DataGridViewSelectedColumnCollection.cs
- SoapElementAttribute.cs
- OrderedDictionaryStateHelper.cs
- PolicyManager.cs