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
![Network programming in C#, Network Programming in VB.NET, Network Programming in .NET](/images/book.jpg)
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- cookiecollection.cs
- SynchronizedInputHelper.cs
- RsaSecurityTokenAuthenticator.cs
- LinearGradientBrush.cs
- serverconfig.cs
- SystemUnicastIPAddressInformation.cs
- OleDbTransaction.cs
- RadioButtonList.cs
- AvtEvent.cs
- Activity.cs
- TreeNode.cs
- StatusBar.cs
- BackgroundFormatInfo.cs
- WizardDesigner.cs
- ZeroOpNode.cs
- Timeline.cs
- SafeMarshalContext.cs
- SymbolMethod.cs
- EqualityComparer.cs
- Sequence.cs
- Win32SafeHandles.cs
- XmlSchemaAppInfo.cs
- Opcode.cs
- HtmlAnchor.cs
- RefExpr.cs
- VideoDrawing.cs
- WsdlInspector.cs
- UnauthorizedAccessException.cs
- BitVector32.cs
- XmlDataDocument.cs
- ManagementPath.cs
- MatrixAnimationBase.cs
- EncodingTable.cs
- BookmarkWorkItem.cs
- Pair.cs
- cookiecontainer.cs
- CircleHotSpot.cs
- WebPartUtil.cs
- RtfControlWordInfo.cs
- ThousandthOfEmRealPoints.cs
- ComEventsSink.cs
- UnionCqlBlock.cs
- CodePrimitiveExpression.cs
- EditingMode.cs
- TimelineClockCollection.cs
- DecoderReplacementFallback.cs
- ListGeneralPage.cs
- Handle.cs
- Module.cs
- Dispatcher.cs
- CipherData.cs
- ServiceParser.cs
- DataGridTableCollection.cs
- ObjectContext.cs
- ImmutablePropertyDescriptorGridEntry.cs
- WebPartZone.cs
- ClosableStream.cs
- UpdatePanelTriggerCollection.cs
- PersonalizationStateInfoCollection.cs
- ControlCodeDomSerializer.cs
- BuildProvidersCompiler.cs
- MissingFieldException.cs
- VoiceObjectToken.cs
- BooleanExpr.cs
- PointAnimationBase.cs
- TypePropertyEditor.cs
- namescope.cs
- MemberCollection.cs
- UidManager.cs
- BuildManager.cs
- MultiDataTrigger.cs
- TextViewBase.cs
- RtfFormatStack.cs
- InternalConfigEventArgs.cs
- HtmlInputCheckBox.cs
- DocumentXmlWriter.cs
- PtsPage.cs
- Pointer.cs
- SqlXml.cs
- Stacktrace.cs
- CodeMemberEvent.cs
- ProgressBarBrushConverter.cs
- Debug.cs
- Pen.cs
- TableItemStyle.cs
- QuaternionIndependentAnimationStorage.cs
- IsolatedStorageException.cs
- XamlStream.cs
- ContentElement.cs
- XsdValidatingReader.cs
- HtmlTableRowCollection.cs
- SqlTrackingWorkflowInstance.cs
- WebBrowserEvent.cs
- XslTransform.cs
- PackageDigitalSignatureManager.cs
- MbpInfo.cs
- basemetadatamappingvisitor.cs
- CaseKeyBox.xaml.cs
- DispatchRuntime.cs
- Compiler.cs