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
- Pair.cs
- JavaScriptString.cs
- ConfigXmlSignificantWhitespace.cs
- TableCell.cs
- AssemblySettingAttributes.cs
- MenuItemBinding.cs
- DataError.cs
- SqlServer2KCompatibilityCheck.cs
- SqlDataSourceConnectionPanel.cs
- QueryReaderSettings.cs
- CalendarSelectionChangedEventArgs.cs
- ProtectedConfiguration.cs
- AssociationEndMember.cs
- Msec.cs
- SerialErrors.cs
- SerializationEventsCache.cs
- HtmlInputFile.cs
- TraceListener.cs
- HwndTarget.cs
- TextSelectionHelper.cs
- ValueOfAction.cs
- RelationshipManager.cs
- Rect3D.cs
- UiaCoreTypesApi.cs
- Single.cs
- RuleDefinitions.cs
- Parsers.cs
- MenuItemStyleCollection.cs
- PageParserFilter.cs
- WebServicesInteroperability.cs
- CodeObject.cs
- IssuanceLicense.cs
- DisplayNameAttribute.cs
- MailWriter.cs
- FtpWebResponse.cs
- Quaternion.cs
- TextBoxView.cs
- FunctionQuery.cs
- PageThemeCodeDomTreeGenerator.cs
- SchemaElementLookUpTable.cs
- C14NUtil.cs
- SqlDuplicator.cs
- X509WindowsSecurityToken.cs
- EdmItemError.cs
- SecurityValidationBehavior.cs
- SafeArrayRankMismatchException.cs
- ResourceManagerWrapper.cs
- Internal.cs
- ProviderIncompatibleException.cs
- ApplicationException.cs
- Vector3D.cs
- ConnectionOrientedTransportBindingElement.cs
- TraceSection.cs
- InputScopeConverter.cs
- VariableReference.cs
- ObfuscationAttribute.cs
- XmlSchemaProviderAttribute.cs
- SafeNativeMethods.cs
- WindowsBrush.cs
- ByteAnimation.cs
- GenericUriParser.cs
- DateTimePicker.cs
- SchemaNamespaceManager.cs
- ScrollViewerAutomationPeer.cs
- XmlHierarchicalDataSourceView.cs
- LingerOption.cs
- MoveSizeWinEventHandler.cs
- XPathScanner.cs
- LinkTarget.cs
- IndexOutOfRangeException.cs
- ReaderWriterLock.cs
- OutputBuffer.cs
- VoiceChangeEventArgs.cs
- TextDecoration.cs
- CacheDependency.cs
- GroupBox.cs
- StructuredType.cs
- Int32Converter.cs
- DashStyle.cs
- SystemWebCachingSectionGroup.cs
- PublisherIdentityPermission.cs
- SecurityTokenAuthenticator.cs
- InvalidCommandTreeException.cs
- ConnectionString.cs
- UnmanagedMarshal.cs
- EastAsianLunisolarCalendar.cs
- DataBoundControl.cs
- TransformValueSerializer.cs
- KeySplineConverter.cs
- MetabaseSettingsIis7.cs
- DataGridViewTextBoxEditingControl.cs
- DNS.cs
- XmlAutoDetectWriter.cs
- IIS7UserPrincipal.cs
- InlineObject.cs
- DisplayNameAttribute.cs
- NullableDoubleMinMaxAggregationOperator.cs
- HttpResponseInternalWrapper.cs
- Section.cs
- basevalidator.cs