Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / Common / CommandTrees / DbQueryCommandTree.cs / 1 / 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
- UncommonField.cs
- SqlNotificationEventArgs.cs
- CodeVariableReferenceExpression.cs
- SecureUICommand.cs
- DoubleUtil.cs
- WindowsGraphics2.cs
- securitycriticaldataClass.cs
- EditorBrowsableAttribute.cs
- NotifyIcon.cs
- Conditional.cs
- EntitySetBase.cs
- ServiceHttpModule.cs
- mediaeventshelper.cs
- ColorTranslator.cs
- Vector3DCollection.cs
- PrintController.cs
- ButtonBase.cs
- SetIndexBinder.cs
- smtpconnection.cs
- PathStreamGeometryContext.cs
- HttpListener.cs
- HMACRIPEMD160.cs
- IntSecurity.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- Quaternion.cs
- GeneralTransform.cs
- PropertyPathWorker.cs
- ToolStripSeparatorRenderEventArgs.cs
- AmbientLight.cs
- RuleElement.cs
- DrawingContext.cs
- XmlNamespaceManager.cs
- SQLString.cs
- HttpCapabilitiesEvaluator.cs
- SystemNetworkInterface.cs
- DiscoveryClientRequestChannel.cs
- entityreference_tresulttype.cs
- VideoDrawing.cs
- initElementDictionary.cs
- QueryCursorEventArgs.cs
- Set.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- UnionCqlBlock.cs
- SpellCheck.cs
- DbCommandTree.cs
- BaseAsyncResult.cs
- WindowsSolidBrush.cs
- AvTraceFormat.cs
- VerticalAlignConverter.cs
- XNodeValidator.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- ObjectItemCollection.cs
- RegexCode.cs
- BindingOperations.cs
- BitmapDownload.cs
- OdbcConnectionFactory.cs
- EdmSchemaError.cs
- CodeNamespaceCollection.cs
- XmlUnspecifiedAttribute.cs
- PeerValidationBehavior.cs
- Int16KeyFrameCollection.cs
- ComponentEditorForm.cs
- DeclaredTypeValidator.cs
- BoundsDrawingContextWalker.cs
- SchemaImporterExtensionElement.cs
- BooleanProjectedSlot.cs
- TypeHelpers.cs
- FixedTextContainer.cs
- Utils.cs
- CreateUserWizardStep.cs
- UriParserTemplates.cs
- UserUseLicenseDictionaryLoader.cs
- SocketException.cs
- SecureEnvironment.cs
- CompModSwitches.cs
- TimelineClockCollection.cs
- RuntimeEnvironment.cs
- Selector.cs
- DesignObjectWrapper.cs
- SecurityProtocolFactory.cs
- ServiceOperationParameter.cs
- TextLine.cs
- HtmlWindowCollection.cs
- Logging.cs
- InfoCardMetadataExchangeClient.cs
- ProcessModelInfo.cs
- Expressions.cs
- BindingExpression.cs
- Button.cs
- IPEndPoint.cs
- DynamicDiscoSearcher.cs
- HttpHeaderCollection.cs
- NamespaceTable.cs
- ListViewTableRow.cs
- panel.cs
- externdll.cs
- SynchronousChannelMergeEnumerator.cs
- CreateUserWizard.cs
- TokenBasedSetEnumerator.cs
- SelectedDatesCollection.cs