Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataEntity / System / Data / Common / CommandTrees / DbQueryCommandTree.cs / 2 / 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
- HttpConfigurationContext.cs
- SessionEndingEventArgs.cs
- RegionData.cs
- IsolationInterop.cs
- SoapExtensionImporter.cs
- ScrollBarAutomationPeer.cs
- CalendarDataBindingHandler.cs
- TemplatedWizardStep.cs
- ArraySet.cs
- TextParaLineResult.cs
- TcpAppDomainProtocolHandler.cs
- CellQuery.cs
- InteropDesigner.xaml.cs
- TextContainerHelper.cs
- Literal.cs
- Base64Encoder.cs
- DtrList.cs
- cookiecollection.cs
- EntityContainerEntitySet.cs
- DocumentXmlWriter.cs
- HostUtils.cs
- WindowsFormsLinkLabel.cs
- SyntaxCheck.cs
- InertiaRotationBehavior.cs
- WebPartDisplayModeEventArgs.cs
- RequiredFieldValidator.cs
- MediaElement.cs
- PreservationFileReader.cs
- LinkTarget.cs
- Simplifier.cs
- TextTreeRootNode.cs
- MetaColumn.cs
- PropertyManager.cs
- SqlMultiplexer.cs
- _RegBlobWebProxyDataBuilder.cs
- ExpressionLexer.cs
- TextDecorationLocationValidation.cs
- SecurityState.cs
- ItemAutomationPeer.cs
- StateRuntime.cs
- XmlAttributeProperties.cs
- XmlHierarchyData.cs
- InvalidPrinterException.cs
- ExpressionVisitor.cs
- DataObjectCopyingEventArgs.cs
- TdsParserSafeHandles.cs
- BitmapImage.cs
- Quaternion.cs
- XhtmlStyleClass.cs
- StringArrayConverter.cs
- processwaithandle.cs
- XmlSchemas.cs
- AccessibilityHelperForXpWin2k3.cs
- initElementDictionary.cs
- FragmentQueryProcessor.cs
- TrustLevelCollection.cs
- ClientSettingsSection.cs
- ActivityExecutionContext.cs
- DbXmlEnabledProviderManifest.cs
- TextSpan.cs
- DataGridViewCellParsingEventArgs.cs
- DataGridViewBindingCompleteEventArgs.cs
- safesecurityhelperavalon.cs
- BaseCollection.cs
- TransformCollection.cs
- GeometryCollection.cs
- ScalarOps.cs
- ListBoxChrome.cs
- UInt16.cs
- ProviderConnectionPoint.cs
- WinHttpWebProxyFinder.cs
- HtmlImage.cs
- CoreSwitches.cs
- XmlElementAttribute.cs
- LockCookie.cs
- securitycriticaldata.cs
- HtmlProps.cs
- EnterpriseServicesHelper.cs
- TemplateParser.cs
- SmtpException.cs
- TextElementAutomationPeer.cs
- Style.cs
- PkcsUtils.cs
- TemplatePartAttribute.cs
- ConstructorNeedsTagAttribute.cs
- WebRequestModuleElementCollection.cs
- XmlConvert.cs
- CalendarDesigner.cs
- StaticTextPointer.cs
- HMACSHA256.cs
- NameScope.cs
- StorageAssociationSetMapping.cs
- XmlWellformedWriter.cs
- Matrix.cs
- AsyncOperation.cs
- Decoder.cs
- DataFormats.cs
- DataGridCommandEventArgs.cs
- CompositeControlDesigner.cs
- AccessDataSource.cs