Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DLinq / Dlinq / SqlClient / Query / SqlAliaser.cs / 1305376 / 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
- RepeatButtonAutomationPeer.cs
- FacetDescriptionElement.cs
- FloatAverageAggregationOperator.cs
- ArraySubsetEnumerator.cs
- CroppedBitmap.cs
- ToolStripSeparatorRenderEventArgs.cs
- ListViewUpdateEventArgs.cs
- KeyToListMap.cs
- ListViewGroupCollectionEditor.cs
- TabRenderer.cs
- SerializerWriterEventHandlers.cs
- OrderedEnumerableRowCollection.cs
- Base64Decoder.cs
- ScopeCollection.cs
- Stack.cs
- CodeIdentifier.cs
- SqlNodeTypeOperators.cs
- AsymmetricCryptoHandle.cs
- FontWeights.cs
- PropertyGridCommands.cs
- XmlUtil.cs
- FormatConvertedBitmap.cs
- SystemException.cs
- FileSystemInfo.cs
- Point.cs
- StreamWriter.cs
- SafePointer.cs
- Single.cs
- DoWhileDesigner.xaml.cs
- StreamInfo.cs
- ExpressionPrefixAttribute.cs
- WindowsStatic.cs
- UnsafeNativeMethods.cs
- RegexStringValidator.cs
- TypeReference.cs
- TemplateControlCodeDomTreeGenerator.cs
- SemanticResultValue.cs
- DataReaderContainer.cs
- GZipDecoder.cs
- VScrollProperties.cs
- MachineKeySection.cs
- ControlBuilder.cs
- GetCertificateRequest.cs
- GraphicsPathIterator.cs
- Popup.cs
- TemplateXamlParser.cs
- DataGridTextBox.cs
- EffectiveValueEntry.cs
- __TransparentProxy.cs
- TextDecorationCollection.cs
- PersonalizationProviderHelper.cs
- FileDetails.cs
- ReflectionUtil.cs
- FontFamilyIdentifier.cs
- SeekStoryboard.cs
- XmlWriterDelegator.cs
- FileReader.cs
- ResourceDisplayNameAttribute.cs
- XmlDocumentType.cs
- PeerApplication.cs
- XmlName.cs
- ObjectDataSource.cs
- MulticastDelegate.cs
- ZipIOLocalFileDataDescriptor.cs
- MemberProjectedSlot.cs
- NativeMethods.cs
- BinaryFormatter.cs
- ParserStreamGeometryContext.cs
- CodePrimitiveExpression.cs
- ThemeDirectoryCompiler.cs
- DashStyles.cs
- CommonServiceBehaviorElement.cs
- TableNameAttribute.cs
- SoapMessage.cs
- WorkflowQueuingService.cs
- Relationship.cs
- AnimationStorage.cs
- WebPartCloseVerb.cs
- LoadWorkflowAsyncResult.cs
- SoapHelper.cs
- ConsoleKeyInfo.cs
- HybridObjectCache.cs
- SoundPlayerAction.cs
- VolatileEnlistmentMultiplexing.cs
- TypeHelpers.cs
- OracleRowUpdatingEventArgs.cs
- StrongNameKeyPair.cs
- EventHandlersStore.cs
- NameScopePropertyAttribute.cs
- CqlQuery.cs
- AutoGeneratedField.cs
- RequestCachePolicyConverter.cs
- VSDExceptions.cs
- SelectionGlyphBase.cs
- TraceShell.cs
- WebServicesInteroperability.cs
- RuntimeHelpers.cs
- ChineseLunisolarCalendar.cs
- DataGridViewColumnHeaderCell.cs
- LocationUpdates.cs