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
- QuaternionRotation3D.cs
- COM2IVsPerPropertyBrowsingHandler.cs
- EncodingStreamWrapper.cs
- ConfigurationSettings.cs
- IsolatedStorageFilePermission.cs
- WebPartConnectionCollection.cs
- IPHostEntry.cs
- CodeNamespaceImport.cs
- FrameSecurityDescriptor.cs
- FastEncoder.cs
- AssemblyNameProxy.cs
- BinHexEncoder.cs
- ListItemConverter.cs
- XpsS0ValidatingLoader.cs
- HttpContextServiceHost.cs
- SchemaExporter.cs
- FileNotFoundException.cs
- serverconfig.cs
- PerfService.cs
- SelectionItemProviderWrapper.cs
- DataSourceExpression.cs
- CalendarDateChangedEventArgs.cs
- XmlChildEnumerator.cs
- CompilationSection.cs
- SqlCharStream.cs
- ExpandedWrapper.cs
- TimeSpanSecondsOrInfiniteConverter.cs
- RegistrySecurity.cs
- ErrorWebPart.cs
- HTMLTagNameToTypeMapper.cs
- CompositeCollectionView.cs
- EventItfInfo.cs
- Substitution.cs
- TiffBitmapDecoder.cs
- CreateParams.cs
- CodePageEncoding.cs
- QuaternionAnimationUsingKeyFrames.cs
- PropertyEntry.cs
- AutomationTextAttribute.cs
- WebExceptionStatus.cs
- HostedBindingBehavior.cs
- HashAlgorithm.cs
- DBSqlParserColumn.cs
- ResourceReferenceKeyNotFoundException.cs
- WebPartsPersonalization.cs
- DesignerActionListCollection.cs
- DataSourceView.cs
- Hashtable.cs
- DriveInfo.cs
- XmlCharacterData.cs
- MenuItem.cs
- XamlUtilities.cs
- DivideByZeroException.cs
- QuotaExceededException.cs
- CompositionCommandSet.cs
- PolyQuadraticBezierSegment.cs
- DataSourceHelper.cs
- DataGridViewTextBoxEditingControl.cs
- RequestCachingSection.cs
- JpegBitmapEncoder.cs
- ApplicationGesture.cs
- XmlJsonReader.cs
- cryptoapiTransform.cs
- ScriptManager.cs
- MimeMultiPart.cs
- AnimationTimeline.cs
- XmlArrayItemAttribute.cs
- CounterCreationDataConverter.cs
- CompositeScriptReference.cs
- JpegBitmapEncoder.cs
- CookielessData.cs
- DataGridViewComboBoxCell.cs
- __ConsoleStream.cs
- _IPv4Address.cs
- SplitContainerDesigner.cs
- clipboard.cs
- StateDesigner.LayoutSelectionGlyph.cs
- PlatformNotSupportedException.cs
- TextTreeInsertElementUndoUnit.cs
- Deflater.cs
- TemplateApplicationHelper.cs
- RectangleF.cs
- OneOfScalarConst.cs
- HwndSourceKeyboardInputSite.cs
- ListItemCollection.cs
- ProcessProtocolHandler.cs
- CRYPTPROTECT_PROMPTSTRUCT.cs
- DataGridViewTextBoxCell.cs
- OleAutBinder.cs
- BuildProvider.cs
- HostingPreferredMapPath.cs
- LinkArea.cs
- BaseDataList.cs
- TTSEngineProxy.cs
- SecurityState.cs
- DataControlFieldHeaderCell.cs
- JsonEnumDataContract.cs
- BridgeDataReader.cs
- CompilerTypeWithParams.cs
- ScriptingJsonSerializationSection.cs