Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Map / Update / Internal / ExtractedStateEntry.cs / 1 / ExtractedStateEntry.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] //--------------------------------------------------------------------- using System.Collections.Generic; using System.Data.Common.CommandTrees; using System.Data.Metadata.Edm; using System.Diagnostics; using System.Linq; namespace System.Data.Mapping.Update.Internal { ////// Represents the data contained in a StateEntry using internal data structures /// of the UpdatePipeline. /// internal struct ExtractedStateEntry { internal readonly EntityState State; internal readonly PropagatorResult Original; internal readonly PropagatorResult Current; internal readonly IEntityStateEntry Source; internal ExtractedStateEntry(UpdateTranslator translator, IEntityStateEntry stateEntry) { Debug.Assert(null != stateEntry, "stateEntry must not be null"); this.State = stateEntry.State; this.Source = stateEntry; switch (stateEntry.State) { case EntityState.Deleted: this.Original = translator.RecordConverter.ConvertOriginalValuesToPropagatorResult( stateEntry, null /* indicates all properties are modified */); this.Current = null; break; case EntityState.Unchanged: this.Original = translator.RecordConverter.ConvertOriginalValuesToPropagatorResult( stateEntry, Enumerable.Empty() /* indicates no properties are modified */); this.Current = translator.RecordConverter.ConvertCurrentValuesToPropagatorResult( stateEntry, Enumerable.Empty ()); break; case EntityState.Modified: this.Original = translator.RecordConverter.ConvertOriginalValuesToPropagatorResult( stateEntry, stateEntry.GetModifiedProperties()); this.Current = translator.RecordConverter.ConvertCurrentValuesToPropagatorResult( stateEntry, stateEntry.GetModifiedProperties()); break; case EntityState.Added: this.Original = null; this.Current = translator.RecordConverter.ConvertCurrentValuesToPropagatorResult( stateEntry, null /* indicates all properties are modified */); break; default: Debug.Fail("unexpected IEntityStateEntry.State for entity " + stateEntry.State); this.Original = null; this.Current = null; break; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] //--------------------------------------------------------------------- using System.Collections.Generic; using System.Data.Common.CommandTrees; using System.Data.Metadata.Edm; using System.Diagnostics; using System.Linq; namespace System.Data.Mapping.Update.Internal { ////// Represents the data contained in a StateEntry using internal data structures /// of the UpdatePipeline. /// internal struct ExtractedStateEntry { internal readonly EntityState State; internal readonly PropagatorResult Original; internal readonly PropagatorResult Current; internal readonly IEntityStateEntry Source; internal ExtractedStateEntry(UpdateTranslator translator, IEntityStateEntry stateEntry) { Debug.Assert(null != stateEntry, "stateEntry must not be null"); this.State = stateEntry.State; this.Source = stateEntry; switch (stateEntry.State) { case EntityState.Deleted: this.Original = translator.RecordConverter.ConvertOriginalValuesToPropagatorResult( stateEntry, null /* indicates all properties are modified */); this.Current = null; break; case EntityState.Unchanged: this.Original = translator.RecordConverter.ConvertOriginalValuesToPropagatorResult( stateEntry, Enumerable.Empty() /* indicates no properties are modified */); this.Current = translator.RecordConverter.ConvertCurrentValuesToPropagatorResult( stateEntry, Enumerable.Empty ()); break; case EntityState.Modified: this.Original = translator.RecordConverter.ConvertOriginalValuesToPropagatorResult( stateEntry, stateEntry.GetModifiedProperties()); this.Current = translator.RecordConverter.ConvertCurrentValuesToPropagatorResult( stateEntry, stateEntry.GetModifiedProperties()); break; case EntityState.Added: this.Original = null; this.Current = translator.RecordConverter.ConvertCurrentValuesToPropagatorResult( stateEntry, null /* indicates all properties are modified */); break; default: Debug.Fail("unexpected IEntityStateEntry.State for entity " + stateEntry.State); this.Original = null; this.Current = null; break; } } } } // 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
- DataExpression.cs
- FontSource.cs
- XmlBinaryWriter.cs
- GraphicsContainer.cs
- Table.cs
- SchemaContext.cs
- HMACSHA256.cs
- PrintPreviewGraphics.cs
- DatasetMethodGenerator.cs
- QilGenerator.cs
- FocusManager.cs
- InputScopeNameConverter.cs
- EnumConverter.cs
- UserControl.cs
- CodeNamespace.cs
- StandardMenuStripVerb.cs
- SchemaReference.cs
- DesignerTransactionCloseEvent.cs
- XappLauncher.cs
- PopupControlService.cs
- wgx_exports.cs
- ScrollItemPatternIdentifiers.cs
- CodeDefaultValueExpression.cs
- DefaultDialogButtons.cs
- DeviceSpecificDialogCachedState.cs
- EDesignUtil.cs
- WebPartDisplayModeCollection.cs
- DefaultValidator.cs
- Query.cs
- MediaTimeline.cs
- WorkItem.cs
- InvalidTimeZoneException.cs
- TextLineBreak.cs
- DecimalAverageAggregationOperator.cs
- Style.cs
- ObjectListSelectEventArgs.cs
- ResourceSetExpression.cs
- ConfigUtil.cs
- InstalledVoice.cs
- TypeDescriptor.cs
- MultiplexingDispatchMessageFormatter.cs
- ObjectView.cs
- DbXmlEnabledProviderManifest.cs
- COSERVERINFO.cs
- EmissiveMaterial.cs
- XamlPointCollectionSerializer.cs
- ContextStaticAttribute.cs
- DispatcherExceptionFilterEventArgs.cs
- UserPreferenceChangingEventArgs.cs
- HttpCachePolicyWrapper.cs
- SecureUICommand.cs
- panel.cs
- DeferredRunTextReference.cs
- SequenceFullException.cs
- SqlBinder.cs
- TextProperties.cs
- WriteFileContext.cs
- UpdateEventArgs.cs
- ClientUtils.cs
- DataListItemEventArgs.cs
- PriorityQueue.cs
- ToolStripItemTextRenderEventArgs.cs
- NoPersistScope.cs
- TransformerConfigurationWizardBase.cs
- Action.cs
- VisualTarget.cs
- PageTheme.cs
- BitmapEffectInput.cs
- HandlerWithFactory.cs
- ConnectionManagementElementCollection.cs
- PathFigure.cs
- GC.cs
- Stack.cs
- DataMemberConverter.cs
- PagesChangedEventArgs.cs
- LogicalExpr.cs
- XmlSerializationWriter.cs
- SByte.cs
- SafeSystemMetrics.cs
- Transform3DCollection.cs
- ISAPIApplicationHost.cs
- TextServicesLoader.cs
- TableAutomationPeer.cs
- DnsPermission.cs
- SoapElementAttribute.cs
- SmiMetaData.cs
- BaseDataList.cs
- NotifyInputEventArgs.cs
- PageContentAsyncResult.cs
- SerTrace.cs
- ClusterUtils.cs
- ManagementBaseObject.cs
- KnownBoxes.cs
- VideoDrawing.cs
- RedirectionProxy.cs
- ZipArchive.cs
- Application.cs
- EventsTab.cs
- ProfileSettings.cs
- EncryptedReference.cs