Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Map / Update / Internal / ChangeNode.cs / 1305376 / ChangeNode.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Metadata.Edm; using System.Collections.Generic; using System.Text; using System.Globalization; namespace System.Data.Mapping.Update.Internal { ////// This class encapsulates changes propagated to a node in an update mapping view. /// It contains lists of deleted and inserted rows. Key intersections betweens rows /// in the two sets are treated as updates in the store. /// ////// internal class ChangeNode { #region Constructors ////// Additional tags indicating the roles of particular values (e.g., concurrency, undefined, /// etc.) are stored within each row: where appropriate, constants appearing /// within a row are associated with a ///through the . /// /// The 'leaves' of an update mapping view (UMV) are extent expressions. A change node /// associated with an extent expression is simply the list of changes to the C-Space /// requested by a caller. As changes propagate 'up' the UMV expression tree, we recursively /// apply transformations such that the change node associated with the root of the UMV /// represents changes to apply in the S-Space. /// ////// Constructs a change node containing changes belonging to the specified collection /// schema definition. /// /// Setsproperty. internal ChangeNode(TypeUsage elementType) { m_elementType = elementType; } #endregion #region Fields private TypeUsage m_elementType; private List m_inserted = new List (); private List m_deleted = new List (); private PropagatorResult m_placeholder; #endregion #region Properties /// /// Gets the type of the rows contained in this node. This type corresponds (not coincidentally) /// to the type of an expression in an update mapping view. /// internal TypeUsage ElementType { get { return m_elementType; } } ////// Gets a list of rows to be inserted. /// internal ListInserted { get { return m_inserted; } } /// /// Gets a list of rows to be deleted. /// internal ListDeleted { get { return m_deleted; } } /// /// Gets or sets a version of a record at this node with default record. The record has the type /// of the node we are visiting. /// internal PropagatorResult Placeholder { get { return m_placeholder; } set { m_placeholder = value; } } #endregion #if DEBUG public override string ToString() { StringBuilder builder = new StringBuilder(); builder.AppendLine("{"); builder.AppendFormat(CultureInfo.InvariantCulture, " ElementType = {0}", ElementType).AppendLine(); builder.AppendLine(" Inserted = {"); foreach (PropagatorResult insert in Inserted) { builder.Append(" ").AppendLine(insert.ToString()); } builder.AppendLine(" }"); builder.AppendLine(" Deleted = {"); foreach (PropagatorResult delete in Deleted) { builder.Append(" ").AppendLine(delete.ToString()); } builder.AppendLine(" }"); builder.AppendFormat(CultureInfo.InvariantCulture, " PlaceHolder = {0}", Placeholder).AppendLine(); builder.Append("}"); return builder.ToString(); } #endif } } // 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
- wmiprovider.cs
- HeaderCollection.cs
- KeyboardEventArgs.cs
- Typeface.cs
- RecognitionResult.cs
- InertiaExpansionBehavior.cs
- StreamGeometry.cs
- ExpressionBuilderContext.cs
- HtmlShim.cs
- PersistChildrenAttribute.cs
- XPathNavigatorKeyComparer.cs
- TextRangeAdaptor.cs
- PackWebRequest.cs
- OleDbStruct.cs
- StrokeNodeData.cs
- SqlProcedureAttribute.cs
- ReverseQueryOperator.cs
- TerminateSequenceResponse.cs
- TableStyle.cs
- FormsAuthenticationCredentials.cs
- QueryStringParameter.cs
- CheckBox.cs
- FontFamilyConverter.cs
- EmitterCache.cs
- HyperLink.cs
- BaseValidator.cs
- JapaneseCalendar.cs
- DataGridViewRowsRemovedEventArgs.cs
- XamlSerializationHelper.cs
- Compiler.cs
- Utils.cs
- LineGeometry.cs
- ResXResourceSet.cs
- JapaneseLunisolarCalendar.cs
- DbProviderFactories.cs
- LingerOption.cs
- Transaction.cs
- ChooseAction.cs
- BCLDebug.cs
- SerializerDescriptor.cs
- ArrayElementGridEntry.cs
- AvTraceDetails.cs
- LineBreakRecord.cs
- ToolStripDropDownItem.cs
- DataBindingCollection.cs
- IncomingWebResponseContext.cs
- TypeToken.cs
- MailWriter.cs
- Single.cs
- TypeRestriction.cs
- WrappedReader.cs
- Util.cs
- HashCodeCombiner.cs
- ValidatorCollection.cs
- LabelAutomationPeer.cs
- DrawingContext.cs
- InvalidTimeZoneException.cs
- PostBackOptions.cs
- TabControlCancelEvent.cs
- RC2CryptoServiceProvider.cs
- WebHeaderCollection.cs
- Tracer.cs
- DataViewManagerListItemTypeDescriptor.cs
- WebPartZoneBase.cs
- MemoryStream.cs
- FileController.cs
- SimpleBitVector32.cs
- BitmapEffectrendercontext.cs
- Icon.cs
- ConsumerConnectionPoint.cs
- XhtmlBasicPanelAdapter.cs
- FolderBrowserDialog.cs
- HttpApplication.cs
- BrowserCapabilitiesFactoryBase.cs
- IOThreadTimer.cs
- Authorization.cs
- Base64Stream.cs
- QueryInterceptorAttribute.cs
- InternalMappingException.cs
- XmlElementCollection.cs
- EventLogHandle.cs
- RuntimeConfig.cs
- XmlStreamStore.cs
- SystemIcons.cs
- SystemIcmpV4Statistics.cs
- XmlConvert.cs
- ContainsRowNumberChecker.cs
- ApplicationServicesHostFactory.cs
- PersistStreamTypeWrapper.cs
- InternalReceiveMessage.cs
- RenderData.cs
- COM2ExtendedTypeConverter.cs
- NamespaceInfo.cs
- IriParsingElement.cs
- MemoryMappedFileSecurity.cs
- ExceptionRoutedEventArgs.cs
- ConfigurationPermission.cs
- Converter.cs
- DesignTimeDataBinding.cs
- LifetimeServices.cs