Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DLinq / Dlinq / SqlClient / Query / SqlAggregateChecker.cs / 1305376 / SqlAggregateChecker.cs
using System; using System.Collections.Generic; using System.Linq.Expressions; using System.Data.Linq; namespace System.Data.Linq.SqlClient { internal class SqlAggregateChecker { Visitor visitor; internal SqlAggregateChecker() { this.visitor = new Visitor(); } internal bool HasAggregates(SqlNode node) { visitor.hasAggregates = false; visitor.Visit(node); return visitor.hasAggregates; } class Visitor : SqlVisitor { internal bool hasAggregates; internal Visitor() { } internal override SqlExpression VisitSubSelect(SqlSubSelect ss) { return ss; } internal override SqlSource VisitSource(SqlSource source) { return source; } internal override SqlExpression VisitUnaryOperator(SqlUnary uo) { switch (uo.NodeType) { case SqlNodeType.Min: case SqlNodeType.Max: case SqlNodeType.Avg: case SqlNodeType.Sum: case SqlNodeType.Count: case SqlNodeType.LongCount: this.hasAggregates = true; return uo; default: return base.VisitUnaryOperator(uo); } } } } } // 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
- ArgIterator.cs
- SerializationFieldInfo.cs
- IgnorePropertiesAttribute.cs
- _SslSessionsCache.cs
- SpinWait.cs
- DoubleStorage.cs
- SecurityPermission.cs
- DataRow.cs
- SizeF.cs
- ListViewEditEventArgs.cs
- ExpressionEditorSheet.cs
- SafeCryptContextHandle.cs
- DataGridViewRowCancelEventArgs.cs
- CustomAttributeFormatException.cs
- DataControlPagerLinkButton.cs
- SoapReflector.cs
- CodeGotoStatement.cs
- AnimationStorage.cs
- CodeEventReferenceExpression.cs
- StringStorage.cs
- HtmlElementCollection.cs
- ServiceModelStringsVersion1.cs
- CertificateElement.cs
- SiteMapProvider.cs
- DirectoryInfo.cs
- IPEndPoint.cs
- StatusBarDrawItemEvent.cs
- SqlNodeAnnotation.cs
- EditingScope.cs
- ToolStripRendererSwitcher.cs
- DispatcherSynchronizationContext.cs
- OnOperation.cs
- TextFindEngine.cs
- DataControlImageButton.cs
- BackgroundWorker.cs
- TextEditorContextMenu.cs
- StringReader.cs
- PerfCounters.cs
- XPSSignatureDefinition.cs
- MorphHelper.cs
- IntSecurity.cs
- ExportOptions.cs
- ResourceProperty.cs
- BoundPropertyEntry.cs
- DataPagerFieldCollection.cs
- StackSpiller.Temps.cs
- KeyFrames.cs
- XmlSchemaRedefine.cs
- SmiContext.cs
- EdmSchemaError.cs
- DropShadowBitmapEffect.cs
- MergeFailedEvent.cs
- UnsafeNativeMethods.cs
- NopReturnReader.cs
- CodeAssignStatement.cs
- GatewayDefinition.cs
- ColumnResizeAdorner.cs
- TraceUtils.cs
- BooleanFacetDescriptionElement.cs
- ParentQuery.cs
- Transform3DGroup.cs
- RegistrationServices.cs
- TabPanel.cs
- TransactionScope.cs
- AdornerHitTestResult.cs
- CalendarDesigner.cs
- AssociatedControlConverter.cs
- WindowsScrollBar.cs
- FactoryGenerator.cs
- BlockUIContainer.cs
- DocumentsTrace.cs
- ColorContextHelper.cs
- WebPartZone.cs
- DocumentViewerHelper.cs
- LOSFormatter.cs
- GridViewRowEventArgs.cs
- OutputCacheProviderCollection.cs
- PageTheme.cs
- FileRegion.cs
- WebPartCatalogCloseVerb.cs
- BinaryObjectWriter.cs
- ChtmlImageAdapter.cs
- ConfigurationPropertyAttribute.cs
- TextStore.cs
- DataGridViewCell.cs
- EnumMember.cs
- WebEventCodes.cs
- LayoutSettings.cs
- validationstate.cs
- QilCloneVisitor.cs
- ScriptDescriptor.cs
- TemplateBaseAction.cs
- RuleSettings.cs
- GeometryModel3D.cs
- MarkupExtensionParser.cs
- TransformFinalBlockRequest.cs
- TypeInitializationException.cs
- SerializableAttribute.cs
- RuleDefinitions.cs
- TextDecorations.cs