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
- ConfigurationValidatorAttribute.cs
- HashStream.cs
- TreeNodeStyle.cs
- IisTraceWebEventProvider.cs
- ValueConversionAttribute.cs
- PersonalizablePropertyEntry.cs
- DoubleUtil.cs
- HtmlElementErrorEventArgs.cs
- NetworkStream.cs
- _Connection.cs
- CssTextWriter.cs
- CallContext.cs
- RequestQueryProcessor.cs
- FontStretchConverter.cs
- ValidationService.cs
- SelectionGlyphBase.cs
- RSAPKCS1KeyExchangeFormatter.cs
- DiscoveryClient.cs
- TableLayoutSettingsTypeConverter.cs
- ServiceModelActivationSectionGroup.cs
- PopOutPanel.cs
- SystemException.cs
- XmlAttributeHolder.cs
- ZipIOCentralDirectoryBlock.cs
- path.cs
- ProxyAttribute.cs
- SchemaImporterExtension.cs
- _ConnectOverlappedAsyncResult.cs
- SortDescription.cs
- TreeNodeSelectionProcessor.cs
- PropertyGridCommands.cs
- CodeSnippetExpression.cs
- AuditLevel.cs
- EasingFunctionBase.cs
- InputMethodStateChangeEventArgs.cs
- COM2ColorConverter.cs
- safex509handles.cs
- XPathNodeIterator.cs
- XsltInput.cs
- _DigestClient.cs
- HttpModuleActionCollection.cs
- SslStreamSecurityBindingElement.cs
- Verify.cs
- DataFieldCollectionEditor.cs
- XmlSchemaChoice.cs
- AspCompat.cs
- FillRuleValidation.cs
- ProfileGroupSettings.cs
- Lease.cs
- DynamicMetaObjectBinder.cs
- MutexSecurity.cs
- NetworkCredential.cs
- LinqDataSourceEditData.cs
- AttachedPropertyBrowsableAttribute.cs
- DragEvent.cs
- XamlReaderHelper.cs
- WebPartConnectionsEventArgs.cs
- FormatConvertedBitmap.cs
- ScrollProperties.cs
- CodeTypeMemberCollection.cs
- SpecialNameAttribute.cs
- SqlGatherProducedAliases.cs
- HashHelper.cs
- FragmentQuery.cs
- HtmlTableRow.cs
- SchemaInfo.cs
- RequestBringIntoViewEventArgs.cs
- WindowsAltTab.cs
- AppDomainGrammarProxy.cs
- ListBoxDesigner.cs
- StylusPointPropertyUnit.cs
- DeleteIndexBinder.cs
- CommaDelimitedStringAttributeCollectionConverter.cs
- MenuAdapter.cs
- ProfileProvider.cs
- SchemaNames.cs
- WorkflowInstance.cs
- ConstraintStruct.cs
- BamlResourceContent.cs
- CatalogZone.cs
- InfiniteIntConverter.cs
- DataGridViewAdvancedBorderStyle.cs
- DataServiceHostWrapper.cs
- DataTableReader.cs
- BoolLiteral.cs
- ValidatingPropertiesEventArgs.cs
- SchemaImporterExtensionElement.cs
- SoapEnvelopeProcessingElement.cs
- StateDesigner.TransitionInfo.cs
- SecurityKeyIdentifierClause.cs
- DataGridViewLinkCell.cs
- EpmCustomContentDeSerializer.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- PropertyEmitterBase.cs
- PlainXmlSerializer.cs
- StringUtil.cs
- GroupByExpressionRewriter.cs
- ByteAnimationUsingKeyFrames.cs
- PreloadedPackages.cs
- FieldToken.cs