Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataEntity / System / Data / Common / internal / materialization / recordstatescratchpad.cs / 1 / 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;
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();
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;
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();
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
- SystemWebCachingSectionGroup.cs
- BaseParser.cs
- BCLDebug.cs
- TextServicesHost.cs
- EntitySetBaseCollection.cs
- PropertyTabChangedEvent.cs
- QilNode.cs
- OleAutBinder.cs
- FixedSOMLineRanges.cs
- ZoneMembershipCondition.cs
- SegmentTree.cs
- XmlChoiceIdentifierAttribute.cs
- SqlPersonalizationProvider.cs
- DataSourceProvider.cs
- Function.cs
- ToolStripGripRenderEventArgs.cs
- XmlHelper.cs
- AppDomainUnloadedException.cs
- ComNativeDescriptor.cs
- XmlSchemaSet.cs
- TextBox.cs
- PageThemeBuildProvider.cs
- TargetInvocationException.cs
- CellLabel.cs
- SecurityManager.cs
- TagPrefixInfo.cs
- SimpleApplicationHost.cs
- FillErrorEventArgs.cs
- Axis.cs
- HostingEnvironmentException.cs
- DataGridCellsPresenter.cs
- UserInitiatedNavigationPermission.cs
- dataobject.cs
- ProcessThreadCollection.cs
- XmlQueryStaticData.cs
- MetadataExchangeBindings.cs
- ContainerFilterService.cs
- XmlQueryTypeFactory.cs
- ServiceManagerHandle.cs
- Nullable.cs
- EditorPartCollection.cs
- DataRecordInfo.cs
- InvalidOleVariantTypeException.cs
- TableLayoutPanelCellPosition.cs
- MaskInputRejectedEventArgs.cs
- ScriptIgnoreAttribute.cs
- InfoCardRequestException.cs
- DPTypeDescriptorContext.cs
- RowSpanVector.cs
- AssemblyContextControlItem.cs
- ChannelBinding.cs
- HttpRawResponse.cs
- MouseEvent.cs
- ImportContext.cs
- IOException.cs
- HostVisual.cs
- AssemblyName.cs
- EnumCodeDomSerializer.cs
- Events.cs
- PngBitmapEncoder.cs
- VirtualDirectoryMappingCollection.cs
- PeerNode.cs
- SudsCommon.cs
- ProviderCommandInfoUtils.cs
- Privilege.cs
- BrowserDefinition.cs
- Operator.cs
- DetailsViewInsertedEventArgs.cs
- PresentationSource.cs
- listviewsubitemcollectioneditor.cs
- Property.cs
- TableLayoutPanelDesigner.cs
- EmptyQuery.cs
- CompiledQuery.cs
- ScopelessEnumAttribute.cs
- AuthorizationSection.cs
- PeerNearMe.cs
- SourceInterpreter.cs
- Enlistment.cs
- BufferManager.cs
- TailCallAnalyzer.cs
- XmlSchemaParticle.cs
- ComponentRenameEvent.cs
- TraceListener.cs
- MenuItemStyleCollection.cs
- FileDialog.cs
- LocalizationComments.cs
- ConfigXmlComment.cs
- DurableOperationAttribute.cs
- XmlNodeList.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- LiteralTextContainerControlBuilder.cs
- IntAverageAggregationOperator.cs
- JobInputBins.cs
- SystemBrushes.cs
- Preprocessor.cs
- PropertyDescriptorCollection.cs
- Material.cs
- ToolStripDropDown.cs
- TimeStampChecker.cs