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
- UnaryNode.cs
- TimeoutValidationAttribute.cs
- Decorator.cs
- FormsAuthenticationCredentials.cs
- ToolStripGrip.cs
- UrlMappingsModule.cs
- BindingSourceDesigner.cs
- TypeLoadException.cs
- IssuedTokensHeader.cs
- TextServicesManager.cs
- NavigationWindow.cs
- CacheModeValueSerializer.cs
- ProcessRequestArgs.cs
- followingsibling.cs
- TextEffect.cs
- SelectionRange.cs
- EditingCoordinator.cs
- NotifyIcon.cs
- RegexWriter.cs
- SqlServices.cs
- SimpleWebHandlerParser.cs
- MenuItem.cs
- MessageQueuePermissionEntry.cs
- HtmlString.cs
- HMACSHA256.cs
- OdbcUtils.cs
- PositiveTimeSpanValidatorAttribute.cs
- OdbcConnection.cs
- IndexingContentUnit.cs
- DataList.cs
- CompoundFileDeflateTransform.cs
- WebServiceData.cs
- RefType.cs
- GraphicsContext.cs
- Brushes.cs
- _ContextAwareResult.cs
- WebControlsSection.cs
- InstalledVoice.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- XpsSerializationException.cs
- DataSourceView.cs
- TextClipboardData.cs
- XmlAnyAttributeAttribute.cs
- HttpRawResponse.cs
- ScrollChrome.cs
- MDIControlStrip.cs
- LayoutTable.cs
- ProfileSettings.cs
- UserNamePasswordServiceCredential.cs
- EntityCommandExecutionException.cs
- DependsOnAttribute.cs
- newinstructionaction.cs
- PublisherIdentityPermission.cs
- TemplateField.cs
- JsonQueryStringConverter.cs
- Bezier.cs
- FormViewModeEventArgs.cs
- DataObjectMethodAttribute.cs
- SerializerProvider.cs
- SecurityNegotiationException.cs
- IChannel.cs
- UnaryOperationBinder.cs
- ClientConvert.cs
- ToolZone.cs
- SystemDiagnosticsSection.cs
- NetSectionGroup.cs
- ipaddressinformationcollection.cs
- StylusPlugInCollection.cs
- ObjectStorage.cs
- CompressedStack.cs
- NetCodeGroup.cs
- PropertyChangeTracker.cs
- UnsafeNativeMethods.cs
- HttpProtocolReflector.cs
- DataBindingsDialog.cs
- Mouse.cs
- PasswordDeriveBytes.cs
- unsafenativemethodstextservices.cs
- NativeMethods.cs
- ViewSimplifier.cs
- FormViewInsertedEventArgs.cs
- CodeCatchClause.cs
- path.cs
- MdiWindowListItemConverter.cs
- InvokeMemberBinder.cs
- DataServiceBehavior.cs
- SessionState.cs
- EnumMemberAttribute.cs
- ColorMap.cs
- CreationContext.cs
- DataGridViewCellPaintingEventArgs.cs
- DataGridViewColumnDesignTimeVisibleAttribute.cs
- WorkflowInstanceContextProvider.cs
- CommunicationObjectManager.cs
- XPathPatternParser.cs
- ArrayTypeMismatchException.cs
- formatter.cs
- XhtmlBasicTextBoxAdapter.cs
- FilterableData.cs
- FunctionDefinition.cs