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 / DbUpdateCommandTree.cs / 2 / DbUpdateCommandTree.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;
using System.Data.Common.Utils;
using System.Diagnostics;
namespace System.Data.Common.CommandTrees
{
///
/// Represents a single-row update operation expressed as a canonical command tree.
/// When the property is set, the command returns a reader; otherwise,
/// it returns a scalar indicating the number of rows affected.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")]
public sealed class DbUpdateCommandTree : DbModificationCommandTree
{
private DbExpression _predicate;
private DbExpression _returning;
IList _setClauses;
internal DbUpdateCommandTree(MetadataWorkspace metadata, DataSpace dataSpace)
: base(metadata, dataSpace)
{
}
///
/// Gets the list of update set clauses that define the update operation.
///
public IList SetClauses
{
get
{
return _setClauses;
}
}
///
/// Gets an that specifies a projection of results to be returned based on the modified rows.
/// If null, indicates no results should be returned from this command.
///
///
/// The returning projection includes only the following elements:
///
/// - NewInstance expression
/// - Property expression
///
///
public DbExpression Returning
{
get
{
return _returning;
}
internal set
{
_returning = value;
}
}
///
/// Gets an that specifies the predicate used to determine which members of the target collection should be updated.
///
///
/// The predicate includes only the following elements:
///
/// - Equality expression
/// - Constant expression
/// - IsNull expression
/// - Property expression
/// - Reference expression to the target
/// - And expression
/// - Or expression
/// - Not expression
///
///
public DbExpression Predicate
{
get
{
return _predicate;
}
internal set
{
_predicate = value;
}
}
internal override DbCommandTreeKind CommandTreeKind
{
get { return DbCommandTreeKind.Update; }
}
internal override bool HasReader
{
get { return null != Returning; }
}
internal override void DumpStructure(ExpressionDumper dumper)
{
base.DumpStructure(dumper);
if (this.Predicate != null)
{
dumper.Dump(this.Predicate, "Predicate");
}
dumper.Begin("SetClauses", null);
foreach (DbModificationClause clause in this.SetClauses)
{
if (null != clause)
{
clause.DumpStructure(dumper);
}
}
dumper.End("SetClauses");
dumper.Dump(this.Returning, "Returning");
}
internal override string PrintTree(ExpressionPrinter printer)
{
return printer.Print(this);
}
internal override void Replace(ExpressionReplacer replacer)
{
using (new EntityBid.ScopeAuto(" %d#", this.ObjectId))
{
throw EntityUtil.NotSupported();
}
}
///
/// Initializes set clauses on this command tree.
///
/// Set clauses.
internal void InitializeSetClauses(List setClauses)
{
Debug.Assert(null != setClauses, "setClauses cannot be null");
_setClauses = setClauses.AsReadOnly();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// 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;
using System.Data.Common.Utils;
using System.Diagnostics;
namespace System.Data.Common.CommandTrees
{
///
/// Represents a single-row update operation expressed as a canonical command tree.
/// When the property is set, the command returns a reader; otherwise,
/// it returns a scalar indicating the number of rows affected.
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId = "Db")]
public sealed class DbUpdateCommandTree : DbModificationCommandTree
{
private DbExpression _predicate;
private DbExpression _returning;
IList _setClauses;
internal DbUpdateCommandTree(MetadataWorkspace metadata, DataSpace dataSpace)
: base(metadata, dataSpace)
{
}
///
/// Gets the list of update set clauses that define the update operation.
///
public IList SetClauses
{
get
{
return _setClauses;
}
}
///
/// Gets an that specifies a projection of results to be returned based on the modified rows.
/// If null, indicates no results should be returned from this command.
///
///
/// The returning projection includes only the following elements:
///
/// - NewInstance expression
/// - Property expression
///
///
public DbExpression Returning
{
get
{
return _returning;
}
internal set
{
_returning = value;
}
}
///
/// Gets an that specifies the predicate used to determine which members of the target collection should be updated.
///
///
/// The predicate includes only the following elements:
///
/// - Equality expression
/// - Constant expression
/// - IsNull expression
/// - Property expression
/// - Reference expression to the target
/// - And expression
/// - Or expression
/// - Not expression
///
///
public DbExpression Predicate
{
get
{
return _predicate;
}
internal set
{
_predicate = value;
}
}
internal override DbCommandTreeKind CommandTreeKind
{
get { return DbCommandTreeKind.Update; }
}
internal override bool HasReader
{
get { return null != Returning; }
}
internal override void DumpStructure(ExpressionDumper dumper)
{
base.DumpStructure(dumper);
if (this.Predicate != null)
{
dumper.Dump(this.Predicate, "Predicate");
}
dumper.Begin("SetClauses", null);
foreach (DbModificationClause clause in this.SetClauses)
{
if (null != clause)
{
clause.DumpStructure(dumper);
}
}
dumper.End("SetClauses");
dumper.Dump(this.Returning, "Returning");
}
internal override string PrintTree(ExpressionPrinter printer)
{
return printer.Print(this);
}
internal override void Replace(ExpressionReplacer replacer)
{
using (new EntityBid.ScopeAuto(" %d#", this.ObjectId))
{
throw EntityUtil.NotSupported();
}
}
///
/// Initializes set clauses on this command tree.
///
/// Set clauses.
internal void InitializeSetClauses(List setClauses)
{
Debug.Assert(null != setClauses, "setClauses cannot be null");
_setClauses = setClauses.AsReadOnly();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ExpressionReplacer.cs
- XhtmlBasicTextViewAdapter.cs
- InputGestureCollection.cs
- WpfMemberInvoker.cs
- ExtentCqlBlock.cs
- DesignerAttributeInfo.cs
- FixUp.cs
- RemotingConfiguration.cs
- ResolvePPIDRequest.cs
- Listbox.cs
- dsa.cs
- FileLogRecordEnumerator.cs
- SpellerHighlightLayer.cs
- DataGridViewDataConnection.cs
- MenuItemStyleCollection.cs
- HttpInputStream.cs
- WpfXamlType.cs
- TextAutomationPeer.cs
- MdiWindowListItemConverter.cs
- RuleSettings.cs
- SrgsElementFactory.cs
- ForwardPositionQuery.cs
- DeadLetterQueue.cs
- XmlHierarchicalDataSourceView.cs
- _KerberosClient.cs
- MenuItem.cs
- Rijndael.cs
- PropertyPath.cs
- CancellationTokenSource.cs
- ReversePositionQuery.cs
- TextElementAutomationPeer.cs
- WebPartConnectionsEventArgs.cs
- XmlNotation.cs
- OnOperation.cs
- OutputScopeManager.cs
- XmlAttributeAttribute.cs
- HttpRawResponse.cs
- JoinTreeNode.cs
- ModifiableIteratorCollection.cs
- JsonMessageEncoderFactory.cs
- Aggregates.cs
- FontNameEditor.cs
- HwndMouseInputProvider.cs
- CharStorage.cs
- DataDocumentXPathNavigator.cs
- DesignerAttribute.cs
- WindowsIdentity.cs
- IncrementalReadDecoders.cs
- ParamArrayAttribute.cs
- PeerPresenceInfo.cs
- StreamSecurityUpgradeAcceptor.cs
- UniqueConstraint.cs
- DataGridViewDesigner.cs
- TextParaLineResult.cs
- DynamicQueryableWrapper.cs
- ExtensionSimplifierMarkupObject.cs
- oledbmetadatacollectionnames.cs
- TableLayoutSettings.cs
- ArcSegment.cs
- ThreadExceptionEvent.cs
- GorillaCodec.cs
- SqlUtil.cs
- MappedMetaModel.cs
- XmlHierarchicalDataSourceView.cs
- EdmProperty.cs
- DesignTableCollection.cs
- SiteMapDataSourceDesigner.cs
- AutomationTextAttribute.cs
- AlternateView.cs
- SystemIPGlobalStatistics.cs
- ParagraphResult.cs
- BitmapScalingModeValidation.cs
- ClickablePoint.cs
- LayoutEngine.cs
- RangeValuePattern.cs
- EventItfInfo.cs
- Point4D.cs
- CodeExporter.cs
- RectValueSerializer.cs
- EncryptedPackage.cs
- GridPatternIdentifiers.cs
- CacheHelper.cs
- ListControl.cs
- GeometryDrawing.cs
- SemaphoreSecurity.cs
- EmptyCollection.cs
- Track.cs
- CodeGeneratorOptions.cs
- PaintValueEventArgs.cs
- LinqDataSourceContextData.cs
- DispatcherExceptionFilterEventArgs.cs
- TypeDelegator.cs
- XamlStackWriter.cs
- PkcsMisc.cs
- PolyBezierSegmentFigureLogic.cs
- SubpageParagraph.cs
- dbenumerator.cs
- PrintPreviewDialog.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- XPathNode.cs