Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Common / CommandTrees / DbQueryCommandTree.cs / 4 / DbQueryCommandTree.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....], [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees.Internal; namespace System.Data.Common.CommandTrees { ////// Represents a query operation expressed as a canonical command tree. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbQueryCommandTree : DbCommandTree { private ExpressionLink _query; ////// Gets or sets an ///that defines the logic of the query operation. /// The expression is null ///The expression is associated with a different command tree public DbExpression Query { get { return _query.Expression; } /*CQT_PUBLIC_API(*/internal/*)*/ set { using (new EntityBid.ScopeAuto("%d#", this.ObjectId)) { EntityBid.Trace(" %d#, value=%d#, %d{cqt.DbExpressionKind}\n", this.ObjectId, DbExpression.GetObjectId(value), DbExpression.GetExpressionKind(value)); _query.Expression = value; } } } /// /// Constructs a new DbQueryCommandTree that uses the specified metadata workspace. /// /// The metadata workspace that the command tree should use. /// The logical 'space' that metadata in the expressions used in this command tree must belong to. ////// or is null /*CQT_PUBLIC_API(*/internal/*)*/ DbQueryCommandTree(MetadataWorkspace metadata, DataSpace dataSpace) : base(metadata, dataSpace) { using (new EntityBid.ScopeAuto(" does not represent a valid data space %d#", this.ObjectId)) { _query = new ExpressionLink("Query", this); } } /// /// Clones this command tree. This operation creates a new DbQueryCommandTree for which each expression property value is a clone of the corresponding property of this command tree. /// ///The cloned command tree /*CQT_PUBLIC_API(*/internal/*)*/ DbQueryCommandTree Clone() { using (new EntityBid.ScopeAuto("%d#", this.ObjectId)) { DbQueryCommandTree newTree = new DbQueryCommandTree( this.MetadataWorkspace, this.DataSpace ); this.CopyParametersTo(newTree); if (this.Query != null) { newTree.Query = ExpressionCopier.Copy(newTree, this.Query); } return newTree; } } internal override DbCommandTreeKind CommandTreeKind { get { return DbCommandTreeKind.Query; } } internal override void DumpStructure(ExpressionDumper dumper) { if (this.Query != null) { dumper.Dump(this.Query, "Query"); } } internal override string PrintTree(ExpressionPrinter printer) { return printer.Print(this); } internal override void Replace(ExpressionReplacer replacer) { using (new EntityBid.ScopeAuto(" %d#", this.ObjectId)) { if (this.Query != null) { DbExpression newQuery = replacer.Replace(this.Query); if (!object.ReferenceEquals(newQuery, this.Query)) { this.Query = newQuery; } } } } internal override void Validate(System.Data.Common.CommandTrees.Internal.Validator v) { using (new EntityBid.ScopeAuto(" %d#", this.ObjectId)) { v.Validate(this); } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....], [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Data.Common.CommandTrees.Internal; namespace System.Data.Common.CommandTrees { ////// Represents a query operation expressed as a canonical command tree. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")] public sealed class DbQueryCommandTree : DbCommandTree { private ExpressionLink _query; ////// Gets or sets an ///that defines the logic of the query operation. /// The expression is null ///The expression is associated with a different command tree public DbExpression Query { get { return _query.Expression; } /*CQT_PUBLIC_API(*/internal/*)*/ set { using (new EntityBid.ScopeAuto("%d#", this.ObjectId)) { EntityBid.Trace(" %d#, value=%d#, %d{cqt.DbExpressionKind}\n", this.ObjectId, DbExpression.GetObjectId(value), DbExpression.GetExpressionKind(value)); _query.Expression = value; } } } /// /// Constructs a new DbQueryCommandTree that uses the specified metadata workspace. /// /// The metadata workspace that the command tree should use. /// The logical 'space' that metadata in the expressions used in this command tree must belong to. ////// or is null /*CQT_PUBLIC_API(*/internal/*)*/ DbQueryCommandTree(MetadataWorkspace metadata, DataSpace dataSpace) : base(metadata, dataSpace) { using (new EntityBid.ScopeAuto(" does not represent a valid data space %d#", this.ObjectId)) { _query = new ExpressionLink("Query", this); } } /// /// Clones this command tree. This operation creates a new DbQueryCommandTree for which each expression property value is a clone of the corresponding property of this command tree. /// ///The cloned command tree /*CQT_PUBLIC_API(*/internal/*)*/ DbQueryCommandTree Clone() { using (new EntityBid.ScopeAuto("%d#", this.ObjectId)) { DbQueryCommandTree newTree = new DbQueryCommandTree( this.MetadataWorkspace, this.DataSpace ); this.CopyParametersTo(newTree); if (this.Query != null) { newTree.Query = ExpressionCopier.Copy(newTree, this.Query); } return newTree; } } internal override DbCommandTreeKind CommandTreeKind { get { return DbCommandTreeKind.Query; } } internal override void DumpStructure(ExpressionDumper dumper) { if (this.Query != null) { dumper.Dump(this.Query, "Query"); } } internal override string PrintTree(ExpressionPrinter printer) { return printer.Print(this); } internal override void Replace(ExpressionReplacer replacer) { using (new EntityBid.ScopeAuto(" %d#", this.ObjectId)) { if (this.Query != null) { DbExpression newQuery = replacer.Replace(this.Query); if (!object.ReferenceEquals(newQuery, this.Query)) { this.Query = newQuery; } } } } internal override void Validate(System.Data.Common.CommandTrees.Internal.Validator v) { using (new EntityBid.ScopeAuto(" %d#", this.ObjectId)) { v.Validate(this); } } } } // 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
- HyperLinkColumn.cs
- CmsInterop.cs
- LinearKeyFrames.cs
- LinkedResource.cs
- ResourceAttributes.cs
- ScaleTransform3D.cs
- DeploymentExceptionMapper.cs
- ToolBar.cs
- XmlValueConverter.cs
- ServiceContractGenerator.cs
- ConfigXmlAttribute.cs
- GenericTypeParameterConverter.cs
- SqlProviderServices.cs
- EdmPropertyAttribute.cs
- WinInetCache.cs
- Scripts.cs
- While.cs
- SessionStateContainer.cs
- ComponentResourceKey.cs
- XNodeSchemaApplier.cs
- XmlReturnReader.cs
- MenuEventArgs.cs
- TiffBitmapDecoder.cs
- BitmapSource.cs
- PropertyInfoSet.cs
- ReturnEventArgs.cs
- EnumerableRowCollection.cs
- WebResponse.cs
- DtcInterfaces.cs
- XmlCharCheckingWriter.cs
- PrePostDescendentsWalker.cs
- NullableDoubleSumAggregationOperator.cs
- DataView.cs
- VariableDesigner.xaml.cs
- RuntimeVariableList.cs
- ExecutionEngineException.cs
- NamedPermissionSet.cs
- CodeCastExpression.cs
- TCPListener.cs
- ContextBase.cs
- StyleHelper.cs
- DataGridViewCellMouseEventArgs.cs
- CngAlgorithmGroup.cs
- VectorValueSerializer.cs
- Literal.cs
- HierarchicalDataSourceControl.cs
- TableCell.cs
- ProcessInfo.cs
- VisualStyleRenderer.cs
- MobileCapabilities.cs
- ProjectionPlanCompiler.cs
- TextContainer.cs
- WmlLabelAdapter.cs
- WebPartConnectVerb.cs
- arabicshape.cs
- ResizeGrip.cs
- AnnotationAdorner.cs
- Literal.cs
- ClassHandlersStore.cs
- DnsCache.cs
- LogConverter.cs
- DisplayNameAttribute.cs
- GroupBox.cs
- PointF.cs
- AnimationTimeline.cs
- TableStyle.cs
- precedingquery.cs
- FamilyMapCollection.cs
- AuthenticationModeHelper.cs
- RowBinding.cs
- XmlWriterTraceListener.cs
- VersionedStream.cs
- Vector3DConverter.cs
- UnSafeCharBuffer.cs
- DrawingGroup.cs
- DataSourceUtil.cs
- BitmapImage.cs
- FixUpCollection.cs
- TrustLevel.cs
- storepermissionattribute.cs
- Bits.cs
- UseManagedPresentationElement.cs
- MetadataItemCollectionFactory.cs
- XamlReaderHelper.cs
- HttpRawResponse.cs
- XPathNodeIterator.cs
- _AutoWebProxyScriptWrapper.cs
- XsltLoader.cs
- ResourceDefaultValueAttribute.cs
- HostedHttpContext.cs
- shaperfactoryquerycachekey.cs
- SignedXml.cs
- Lease.cs
- TypeDescriptorFilterService.cs
- ExpanderAutomationPeer.cs
- DtdParser.cs
- MdiWindowListStrip.cs
- MsmqQueue.cs
- CustomAttributeFormatException.cs
- BitmapFrameEncode.cs