Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Objects / Internal / complextypematerializer.cs / 1305376 / complextypematerializer.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Metadata.Edm; using System.Data.Common; using System.Diagnostics; using System.Data.Mapping; namespace System.Data.Objects.Internal { ////// Supports materialization of complex type instances from records. Used /// by the ObjectStateManager. /// internal class ComplexTypeMaterializer { private readonly MetadataWorkspace _workspace; private const int MaxPlanCount = 4; private Plan[] _lastPlans; private int _lastPlanIndex; internal ComplexTypeMaterializer(MetadataWorkspace workspace) { _workspace = workspace; } internal object CreateComplex(IExtendedDataRecord record, DataRecordInfo recordInfo, object result) { Debug.Assert(null != record, "null IExtendedDataRecord"); Debug.Assert(null != recordInfo, "null DataRecordInfo"); Debug.Assert(null != recordInfo.RecordType, "null TypeUsage"); Debug.Assert(null != recordInfo.RecordType.EdmType, "null EdmType"); Debug.Assert(Helper.IsEntityType(recordInfo.RecordType.EdmType) || Helper.IsComplexType(recordInfo.RecordType.EdmType), "not EntityType or ComplexType"); Plan plan = GetPlan(record, recordInfo); if (null == result) { result = ((Func
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BuildManager.cs
- SnapshotChangeTrackingStrategy.cs
- Image.cs
- WebScriptEnablingBehavior.cs
- SiteMapDataSource.cs
- ChildTable.cs
- Int32KeyFrameCollection.cs
- NamespaceDisplay.xaml.cs
- TypeUnloadedException.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- ListSortDescription.cs
- AttachmentCollection.cs
- DocumentEventArgs.cs
- TextOutput.cs
- AmbiguousMatchException.cs
- WaitHandleCannotBeOpenedException.cs
- _ListenerResponseStream.cs
- Clipboard.cs
- DictionaryEntry.cs
- BulletDecorator.cs
- MetricEntry.cs
- HyperLinkColumn.cs
- METAHEADER.cs
- WebRequestModulesSection.cs
- ExpressionBinding.cs
- SurrogateDataContract.cs
- KnownBoxes.cs
- ExceptionUtil.cs
- CompensatableTransactionScopeActivity.cs
- XmlTextAttribute.cs
- ADMembershipUser.cs
- OleDbConnectionFactory.cs
- ActiveXContainer.cs
- Canvas.cs
- ParameterCollectionEditorForm.cs
- WebPartZone.cs
- XPathMessageFilterElementComparer.cs
- SessionStateItemCollection.cs
- RadioButtonBaseAdapter.cs
- AspCompat.cs
- XmlCodeExporter.cs
- ItemMap.cs
- SiteMapNodeCollection.cs
- SmtpFailedRecipientException.cs
- AppDomainManager.cs
- ApplicationSecurityInfo.cs
- ControlParameter.cs
- XmlAttributeHolder.cs
- CacheDependency.cs
- Activator.cs
- BidPrivateBase.cs
- IChannel.cs
- SessionStateContainer.cs
- FileChangesMonitor.cs
- FamilyTypeface.cs
- LayoutTableCell.cs
- FamilyCollection.cs
- RenderData.cs
- DataGridRowEventArgs.cs
- WebException.cs
- ProviderException.cs
- SingleAnimationUsingKeyFrames.cs
- MouseWheelEventArgs.cs
- HeaderElement.cs
- MetadataSource.cs
- WebConfigurationHostFileChange.cs
- SizeChangedEventArgs.cs
- HybridCollection.cs
- Int32KeyFrameCollection.cs
- StrokeNode.cs
- HostingMessageProperty.cs
- ConsoleKeyInfo.cs
- FixedSOMElement.cs
- SpanIndex.cs
- HttpWriter.cs
- TextEmbeddedObject.cs
- BigInt.cs
- XmlQueryOutput.cs
- ImageClickEventArgs.cs
- NumberFormatter.cs
- SchemaMerger.cs
- CommonObjectSecurity.cs
- WindowVisualStateTracker.cs
- TextAnchor.cs
- DeferrableContentConverter.cs
- TextSchema.cs
- TabRenderer.cs
- MarkupExtensionParser.cs
- ValidationHelper.cs
- ComNativeDescriptor.cs
- TargetPerspective.cs
- NavigationWindowAutomationPeer.cs
- ResourceDictionary.cs
- WebServiceBindingAttribute.cs
- MsdtcWrapper.cs
- MemberInitExpression.cs
- StrongNameKeyPair.cs
- Authorization.cs
- UserPreferenceChangingEventArgs.cs
- XmlChildNodes.cs