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
- CodeAttachEventStatement.cs
- UnaryExpression.cs
- BrowsableAttribute.cs
- FileSystemEventArgs.cs
- XamlTreeBuilderBamlRecordWriter.cs
- TcpHostedTransportConfiguration.cs
- Typography.cs
- PropertyItemInternal.cs
- FixedSOMFixedBlock.cs
- Membership.cs
- SqlDependencyUtils.cs
- _NestedMultipleAsyncResult.cs
- TabControl.cs
- Decoder.cs
- TextSimpleMarkerProperties.cs
- HtmlWindowCollection.cs
- COM2EnumConverter.cs
- ResourceManager.cs
- Inline.cs
- CustomValidator.cs
- XmlSchemaGroupRef.cs
- StructuredTypeInfo.cs
- ContractUtils.cs
- SafeReadContext.cs
- MatrixCamera.cs
- ReferenceService.cs
- _NestedSingleAsyncResult.cs
- SoapFormatter.cs
- TemplateKey.cs
- QueryTreeBuilder.cs
- HtmlInputHidden.cs
- ImageCreator.cs
- Point3D.cs
- NetNamedPipeSecurityElement.cs
- PropertyPushdownHelper.cs
- sortedlist.cs
- ClientOptions.cs
- _ProxyChain.cs
- BindableAttribute.cs
- ControlValuePropertyAttribute.cs
- Column.cs
- ProxyAttribute.cs
- Model3D.cs
- PtsHost.cs
- Literal.cs
- DataGridTablesFactory.cs
- newinstructionaction.cs
- AssemblyName.cs
- InfoCardArgumentException.cs
- MulticastNotSupportedException.cs
- OleDbReferenceCollection.cs
- Duration.cs
- TypeElement.cs
- StreamResourceInfo.cs
- StorageModelBuildProvider.cs
- EventItfInfo.cs
- MouseCaptureWithinProperty.cs
- Label.cs
- AutoGeneratedField.cs
- FormatSettings.cs
- ModelPropertyImpl.cs
- ToolStripSettings.cs
- DateTimeFormatInfoScanner.cs
- FontClient.cs
- WebPartConnectionsCloseVerb.cs
- WmpBitmapEncoder.cs
- sitestring.cs
- Mouse.cs
- Metadata.cs
- QuadraticBezierSegment.cs
- BinaryQueryOperator.cs
- SigningCredentials.cs
- SafeNativeMethods.cs
- HtmlInputPassword.cs
- JsonGlobals.cs
- BindingOperations.cs
- ComponentSerializationService.cs
- PropertyFilterAttribute.cs
- InboundActivityHelper.cs
- HtmlButton.cs
- XmlMtomWriter.cs
- SqlDuplicator.cs
- Clock.cs
- GeneralTransformCollection.cs
- Stacktrace.cs
- ImportCatalogPart.cs
- InputReferenceExpression.cs
- ScrollEvent.cs
- HttpModuleAction.cs
- AdornerLayer.cs
- VersionedStreamOwner.cs
- DataGridViewSelectedCellCollection.cs
- AggregateNode.cs
- WeakRefEnumerator.cs
- CompositeTypefaceMetrics.cs
- SecurityException.cs
- TypeLoadException.cs
- DbException.cs
- ExtendedPropertyCollection.cs
- ResourceCategoryAttribute.cs