Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DLinq / Dlinq / SqlClient / Query / SqlAliaser.cs / 1 / SqlAliaser.cs
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.Linq;
namespace System.Data.Linq.SqlClient {
internal class SqlAliaser {
Visitor visitor;
internal SqlAliaser() {
this.visitor = new Visitor();
}
internal SqlNode AssociateColumnsWithAliases(SqlNode node) {
return this.visitor.Visit(node);
}
class Visitor : SqlVisitor {
SqlAlias alias;
internal Visitor() {
}
internal override SqlAlias VisitAlias(SqlAlias sqlAlias) {
SqlAlias save = this.alias;
this.alias = sqlAlias;
sqlAlias.Node = this.Visit(sqlAlias.Node);
this.alias = save;
return sqlAlias;
}
internal override SqlRow VisitRow(SqlRow row) {
foreach (SqlColumn c in row.Columns) {
c.Alias = alias;
}
return base.VisitRow(row);
}
internal override SqlTable VisitTable(SqlTable tab) {
foreach (SqlColumn c in tab.Columns) {
c.Alias = alias;
}
return base.VisitTable(tab);
}
internal override SqlExpression VisitTableValuedFunctionCall(SqlTableValuedFunctionCall fc) {
foreach (SqlColumn c in fc.Columns) {
c.Alias = this.alias;
}
return base.VisitTableValuedFunctionCall(fc);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.Linq;
namespace System.Data.Linq.SqlClient {
internal class SqlAliaser {
Visitor visitor;
internal SqlAliaser() {
this.visitor = new Visitor();
}
internal SqlNode AssociateColumnsWithAliases(SqlNode node) {
return this.visitor.Visit(node);
}
class Visitor : SqlVisitor {
SqlAlias alias;
internal Visitor() {
}
internal override SqlAlias VisitAlias(SqlAlias sqlAlias) {
SqlAlias save = this.alias;
this.alias = sqlAlias;
sqlAlias.Node = this.Visit(sqlAlias.Node);
this.alias = save;
return sqlAlias;
}
internal override SqlRow VisitRow(SqlRow row) {
foreach (SqlColumn c in row.Columns) {
c.Alias = alias;
}
return base.VisitRow(row);
}
internal override SqlTable VisitTable(SqlTable tab) {
foreach (SqlColumn c in tab.Columns) {
c.Alias = alias;
}
return base.VisitTable(tab);
}
internal override SqlExpression VisitTableValuedFunctionCall(SqlTableValuedFunctionCall fc) {
foreach (SqlColumn c in fc.Columns) {
c.Alias = this.alias;
}
return base.VisitTableValuedFunctionCall(fc);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataRowComparer.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- UnsafeNativeMethods.cs
- WizardStepCollectionEditor.cs
- SignedXml.cs
- DbProviderFactory.cs
- LogStream.cs
- XmlReaderSettings.cs
- WindowInteractionStateTracker.cs
- ListSurrogate.cs
- PreviewKeyDownEventArgs.cs
- DataGridCaption.cs
- DesignTimeParseData.cs
- PersonalizationProviderCollection.cs
- FloaterBaseParagraph.cs
- ResourceWriter.cs
- MemoryResponseElement.cs
- UnSafeCharBuffer.cs
- PolyBezierSegment.cs
- EntityDataSourceChangingEventArgs.cs
- RbTree.cs
- WorkflowControlClient.cs
- DelegateSerializationHolder.cs
- FrameSecurityDescriptor.cs
- CodeConstructor.cs
- RootDesignerSerializerAttribute.cs
- WriteableBitmap.cs
- StyleCollectionEditor.cs
- ProcessProtocolHandler.cs
- DataContext.cs
- BaseTransportHeaders.cs
- Set.cs
- XmlSchemaDocumentation.cs
- DaylightTime.cs
- ProcessModuleCollection.cs
- MaskedTextProvider.cs
- ActivityBuilder.cs
- DispatcherSynchronizationContext.cs
- _ProxyRegBlob.cs
- HashHelpers.cs
- MULTI_QI.cs
- PtsHelper.cs
- updateconfighost.cs
- CreateCardRequest.cs
- GenericWebPart.cs
- Boolean.cs
- ColorContextHelper.cs
- CollectionChange.cs
- DelegateTypeInfo.cs
- XmlEncoding.cs
- GenericParameterDataContract.cs
- KnownColorTable.cs
- _BaseOverlappedAsyncResult.cs
- JournalEntryStack.cs
- IndexedGlyphRun.cs
- StringFormat.cs
- StatusBar.cs
- WorkerRequest.cs
- DrawingBrush.cs
- _DynamicWinsockMethods.cs
- Separator.cs
- TextBox.cs
- XmlQuerySequence.cs
- HttpFileCollection.cs
- PageThemeCodeDomTreeGenerator.cs
- EventSourceCreationData.cs
- CodeCommentStatementCollection.cs
- CacheHelper.cs
- TemplateManager.cs
- HitTestParameters.cs
- MsmqProcessProtocolHandler.cs
- XmlMapping.cs
- Animatable.cs
- EntityExpressionVisitor.cs
- ResourceExpressionBuilder.cs
- ClipboardProcessor.cs
- RegexStringValidatorAttribute.cs
- DesignerView.cs
- LabelDesigner.cs
- RemotingSurrogateSelector.cs
- RegularExpressionValidator.cs
- ConvertTextFrag.cs
- ResourceExpressionBuilder.cs
- FtpRequestCacheValidator.cs
- TableChangeProcessor.cs
- TableRowCollection.cs
- RequestStatusBarUpdateEventArgs.cs
- StringReader.cs
- FaultException.cs
- FontResourceCache.cs
- AtomMaterializerLog.cs
- TriggerBase.cs
- BrowserCapabilitiesCodeGenerator.cs
- GrammarBuilderPhrase.cs
- OracleConnectionFactory.cs
- Camera.cs
- ConditionalAttribute.cs
- AnnouncementSendsAsyncResult.cs
- TransactionProtocolConverter.cs
- OpenTypeLayoutCache.cs