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 / SymbolPair.cs / 1 / SymbolPair.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
{
///
/// 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.
//----------------------------------------------------------------------
//
// 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
{
///
/// 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
- HttpResponseHeader.cs
- BinHexEncoder.cs
- UrlMappingsSection.cs
- OletxDependentTransaction.cs
- ColumnTypeConverter.cs
- PersonalizationProvider.cs
- RankException.cs
- ObjectDataSourceStatusEventArgs.cs
- NullableConverter.cs
- Page.cs
- ConfigurationConverterBase.cs
- ScriptManager.cs
- ProgressiveCrcCalculatingStream.cs
- WorkflowFormatterBehavior.cs
- EntitySqlQueryState.cs
- DataGridViewComboBoxCell.cs
- FrameDimension.cs
- TextEditorCharacters.cs
- Choices.cs
- DesignOnlyAttribute.cs
- SuppressIldasmAttribute.cs
- PersonalizationProvider.cs
- SimpleNameService.cs
- ControlAdapter.cs
- AppSettingsExpressionBuilder.cs
- RadioButtonBaseAdapter.cs
- GenerateScriptTypeAttribute.cs
- PartialClassGenerationTaskInternal.cs
- BinaryWriter.cs
- HtmlForm.cs
- Version.cs
- WindowsSlider.cs
- MemberMaps.cs
- ColorConvertedBitmap.cs
- StandardTransformFactory.cs
- TimerElapsedEvenArgs.cs
- ServiceConfigurationTraceRecord.cs
- UnsettableComboBox.cs
- Nullable.cs
- HttpCookiesSection.cs
- TypeResolvingOptionsAttribute.cs
- WsdlWriter.cs
- Point3D.cs
- TextBoxDesigner.cs
- XmlExtensionFunction.cs
- COAUTHIDENTITY.cs
- Interfaces.cs
- EventHandlersStore.cs
- StickyNoteContentControl.cs
- ContentType.cs
- InputLangChangeEvent.cs
- AttachmentCollection.cs
- AQNBuilder.cs
- KoreanLunisolarCalendar.cs
- ValidationEventArgs.cs
- SessionIDManager.cs
- QueryCoreOp.cs
- PropertyEmitterBase.cs
- WebExceptionStatus.cs
- BaseServiceProvider.cs
- XmlArrayAttribute.cs
- BooleanAnimationBase.cs
- Closure.cs
- DesignerEventService.cs
- QueryContinueDragEventArgs.cs
- BamlCollectionHolder.cs
- CodeGenerationManager.cs
- xamlnodes.cs
- AnimationLayer.cs
- ADMembershipUser.cs
- BatchServiceHost.cs
- RegionIterator.cs
- configsystem.cs
- SubtreeProcessor.cs
- WorkflowFileItem.cs
- PropertyConverter.cs
- SoapInteropTypes.cs
- TextElementCollection.cs
- ConfigurationLockCollection.cs
- GrammarBuilderRuleRef.cs
- TraceInternal.cs
- SmtpNtlmAuthenticationModule.cs
- CustomPopupPlacement.cs
- GeneratedCodeAttribute.cs
- ListSourceHelper.cs
- ProfileManager.cs
- TextTrailingWordEllipsis.cs
- Compiler.cs
- CheckBoxPopupAdapter.cs
- EventLogPermission.cs
- RtfToken.cs
- SqlCacheDependencyDatabase.cs
- LoginCancelEventArgs.cs
- TextMarkerSource.cs
- StyleSheetDesigner.cs
- AutomationProperty.cs
- EtwTrace.cs
- CodeAttributeDeclaration.cs
- XmlException.cs
- DesignConnection.cs