Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Common / internal / materialization / recordstatescratchpad.cs / 1599186 / recordstatescratchpad.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Linq; using System.Linq.Expressions; using System.Runtime.CompilerServices; namespace System.Data.Common.Internal.Materialization { ////// Used in the Translator to aggregate information about a (nested) record /// state. After the translator visits the columnMaps, it will compile /// the recordState(s) which produces an immutable RecordStateFactory that /// can be shared amongst many query instances. /// internal class RecordStateScratchpad { private int _stateSlotNumber; internal int StateSlotNumber { get { return _stateSlotNumber; } set { _stateSlotNumber = value; } } private int _columnCount; internal int ColumnCount { get { return _columnCount; } set { _columnCount = value; } } private DataRecordInfo _dataRecordInfo; internal DataRecordInfo DataRecordInfo { get { return _dataRecordInfo; } set { _dataRecordInfo = value; } } private Expression _gatherData; internal Expression GatherData { get { return _gatherData; } set { _gatherData = value; } } private string[] _propertyNames; internal string[] PropertyNames { get { return _propertyNames; } set { _propertyNames = value; } } private TypeUsage[] _typeUsages; internal TypeUsage[] TypeUsages { get { return _typeUsages; } set { _typeUsages = value; } } private List_nestedRecordStateScratchpads = new List (); [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] internal RecordStateFactory Compile() { RecordStateFactory[] nestedRecordStateFactories = new RecordStateFactory[_nestedRecordStateScratchpads.Count]; for (int i = 0; i < nestedRecordStateFactories.Length; i++) { nestedRecordStateFactories[i] = _nestedRecordStateScratchpads[i].Compile(); } RecordStateFactory result = (RecordStateFactory)Activator.CreateInstance(typeof(RecordStateFactory), new object[] { this.StateSlotNumber, this.ColumnCount, nestedRecordStateFactories, this.DataRecordInfo, this.GatherData, this.PropertyNames, this.TypeUsages }); return result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System.Collections.Generic; using System.Data.Metadata.Edm; using System.Linq; using System.Linq.Expressions; using System.Runtime.CompilerServices; namespace System.Data.Common.Internal.Materialization { ////// Used in the Translator to aggregate information about a (nested) record /// state. After the translator visits the columnMaps, it will compile /// the recordState(s) which produces an immutable RecordStateFactory that /// can be shared amongst many query instances. /// internal class RecordStateScratchpad { private int _stateSlotNumber; internal int StateSlotNumber { get { return _stateSlotNumber; } set { _stateSlotNumber = value; } } private int _columnCount; internal int ColumnCount { get { return _columnCount; } set { _columnCount = value; } } private DataRecordInfo _dataRecordInfo; internal DataRecordInfo DataRecordInfo { get { return _dataRecordInfo; } set { _dataRecordInfo = value; } } private Expression _gatherData; internal Expression GatherData { get { return _gatherData; } set { _gatherData = value; } } private string[] _propertyNames; internal string[] PropertyNames { get { return _propertyNames; } set { _propertyNames = value; } } private TypeUsage[] _typeUsages; internal TypeUsage[] TypeUsages { get { return _typeUsages; } set { _typeUsages = value; } } private List_nestedRecordStateScratchpads = new List (); [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] internal RecordStateFactory Compile() { RecordStateFactory[] nestedRecordStateFactories = new RecordStateFactory[_nestedRecordStateScratchpads.Count]; for (int i = 0; i < nestedRecordStateFactories.Length; i++) { nestedRecordStateFactories[i] = _nestedRecordStateScratchpads[i].Compile(); } RecordStateFactory result = (RecordStateFactory)Activator.CreateInstance(typeof(RecordStateFactory), new object[] { this.StateSlotNumber, this.ColumnCount, nestedRecordStateFactories, this.DataRecordInfo, this.GatherData, this.PropertyNames, this.TypeUsages }); return result; } } } // 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
- OdbcErrorCollection.cs
- LayoutManager.cs
- MaterialGroup.cs
- EntityDataSourceSelectedEventArgs.cs
- JsonCollectionDataContract.cs
- MissingManifestResourceException.cs
- EventArgs.cs
- XmlComplianceUtil.cs
- ObjectViewFactory.cs
- StructuralObject.cs
- DataDocumentXPathNavigator.cs
- PreservationFileWriter.cs
- ConstNode.cs
- QueryAccessibilityHelpEvent.cs
- DataKeyArray.cs
- StringCollectionMarkupSerializer.cs
- TreeViewEvent.cs
- ExternalException.cs
- BitmapEffectRenderDataResource.cs
- RegisteredExpandoAttribute.cs
- CookieParameter.cs
- cookiecollection.cs
- GenericUriParser.cs
- RouteTable.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- MessageAction.cs
- VarInfo.cs
- SecurityTokenResolver.cs
- CapabilitiesPattern.cs
- DialogResultConverter.cs
- BackEase.cs
- sqlinternaltransaction.cs
- TranslateTransform.cs
- QilGenerator.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- SecurityDescriptor.cs
- MergePropertyDescriptor.cs
- NativeMethods.cs
- ValueTypeFieldReference.cs
- GridViewAutomationPeer.cs
- storepermission.cs
- SemanticAnalyzer.cs
- CodeEntryPointMethod.cs
- CanonicalFontFamilyReference.cs
- WindowsPen.cs
- BeginStoryboard.cs
- FontWeights.cs
- XmlWellformedWriter.cs
- AppModelKnownContentFactory.cs
- ListenerConfig.cs
- StoryFragments.cs
- CustomWebEventKey.cs
- XPathNodeIterator.cs
- X509Certificate2.cs
- DocumentXPathNavigator.cs
- _NestedSingleAsyncResult.cs
- TypeDelegator.cs
- NameValueConfigurationElement.cs
- DocumentViewerBase.cs
- KeyEvent.cs
- TreeChangeInfo.cs
- WpfWebRequestHelper.cs
- AstNode.cs
- LayoutSettings.cs
- TableRowCollection.cs
- CalendarDay.cs
- DialogBaseForm.cs
- SkipQueryOptionExpression.cs
- ArgumentFixer.cs
- URLMembershipCondition.cs
- ElementInit.cs
- DBSqlParserTable.cs
- ISO2022Encoding.cs
- CrossSiteScriptingValidation.cs
- GlyphRunDrawing.cs
- StringComparer.cs
- Regex.cs
- MapPathBasedVirtualPathProvider.cs
- DesignTimeParseData.cs
- InvalidFilterCriteriaException.cs
- ArgumentException.cs
- ListViewContainer.cs
- FixedSOMGroup.cs
- DatasetMethodGenerator.cs
- StructuredTypeInfo.cs
- SaveFileDialog.cs
- WmlPageAdapter.cs
- StructuredTypeEmitter.cs
- RequestQueryParser.cs
- ProtocolViolationException.cs
- ValueConversionAttribute.cs
- SerializationEventsCache.cs
- RijndaelCryptoServiceProvider.cs
- UIElement.cs
- Control.cs
- FilterableAttribute.cs
- ContainerUtilities.cs
- VScrollBar.cs
- DataGridRowsPresenter.cs
- SafeThreadHandle.cs