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
- InternalControlCollection.cs
- ExplicitDiscriminatorMap.cs
- BitmapData.cs
- AppLevelCompilationSectionCache.cs
- WorkflowIdleElement.cs
- PropertyToken.cs
- EventLogEntryCollection.cs
- SQLStringStorage.cs
- Pair.cs
- GiveFeedbackEvent.cs
- ClientOptions.cs
- DataSourceXmlSubItemAttribute.cs
- BinarySerializer.cs
- LoginStatusDesigner.cs
- AmbientValueAttribute.cs
- TypeResolvingOptionsAttribute.cs
- Positioning.cs
- Image.cs
- PersonalizationEntry.cs
- WindowsIdentity.cs
- RowParagraph.cs
- Events.cs
- LinqDataSourceDisposeEventArgs.cs
- HttpClientCertificate.cs
- BinHexEncoder.cs
- FileDialogPermission.cs
- MemberPath.cs
- MatrixTransform.cs
- DirectoryLocalQuery.cs
- SystemGatewayIPAddressInformation.cs
- XamlUtilities.cs
- KeyFrames.cs
- GeneralTransform3D.cs
- Compiler.cs
- DebugView.cs
- TreePrinter.cs
- NaturalLanguageHyphenator.cs
- _BaseOverlappedAsyncResult.cs
- UniqueEventHelper.cs
- RijndaelManagedTransform.cs
- XmlnsCache.cs
- NativeMethodsCLR.cs
- Int64Storage.cs
- SmtpLoginAuthenticationModule.cs
- BindingManagerDataErrorEventArgs.cs
- XamlFilter.cs
- ModifierKeysValueSerializer.cs
- FormClosingEvent.cs
- KeyPullup.cs
- QilVisitor.cs
- Vars.cs
- AssemblyContextControlItem.cs
- Polyline.cs
- TTSVoice.cs
- DataTable.cs
- LazyTextWriterCreator.cs
- XpsSerializationException.cs
- HttpCacheVaryByContentEncodings.cs
- QueryInterceptorAttribute.cs
- ADMembershipProvider.cs
- Random.cs
- WinFormsSecurity.cs
- WorkflowFileItem.cs
- log.cs
- ExpressionList.cs
- UnSafeCharBuffer.cs
- ServiceDescriptionImporter.cs
- WpfKnownType.cs
- XmlSchemaComplexType.cs
- BamlLocalizer.cs
- Double.cs
- StringInfo.cs
- ContainerVisual.cs
- XmlNamespaceMappingCollection.cs
- WCFBuildProvider.cs
- SecureEnvironment.cs
- Control.cs
- CqlWriter.cs
- SmiMetaData.cs
- CodeVariableDeclarationStatement.cs
- DropSourceBehavior.cs
- BitmapMetadataBlob.cs
- ImageSourceConverter.cs
- EntitySqlException.cs
- DesignerActionUIStateChangeEventArgs.cs
- ReadWriteSpinLock.cs
- HtmlTableRowCollection.cs
- SecureEnvironment.cs
- TreeNode.cs
- AccessDataSourceDesigner.cs
- KernelTypeValidation.cs
- ListParagraph.cs
- ExpressionVisitor.cs
- SendDesigner.xaml.cs
- UnicastIPAddressInformationCollection.cs
- DescendentsWalkerBase.cs
- CollectionChangedEventManager.cs
- StateMachine.cs
- DataContractSerializerFaultFormatter.cs
- SingletonInstanceContextProvider.cs