Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / ALinq / InputReferenceExpression.cs / 1305376 / InputReferenceExpression.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Respresents a reference to a resource set in a resource bound expression tree.
//
//
// @owner [....]
//---------------------------------------------------------------------
namespace System.Data.Services.Client
{
using System;
using System.Diagnostics;
using System.Linq.Expressions;
///
/// Represents a reference to a bound resource set in the resource path.
/// The type of the input reference is the element type of the set.
///
///
/// Because the type of the input reference is the element type of the set,
/// it can be used to indicate what a range variable ranges over.
///
/// For example, in input.Select(b => b.id), 'input' is an IQueryable of T,
/// and 'b' is a parameter of type T. 'b' can be rebound as an input reference
/// to 'input' by the InputBinder, which helps in query analysis and
/// translation.
///
[DebuggerDisplay("InputReferenceExpression -> {Type}")]
internal sealed class InputReferenceExpression : Expression
{
/// The resource or set referred to by this input reference expression
private ResourceExpression target;
///
/// Constructs a new input reference expression that refers to the specified resource set
///
/// The target resource set that the new expression will reference
#pragma warning disable 618
internal InputReferenceExpression(ResourceExpression target)
: base((ExpressionType)ResourceExpressionType.InputReference, target.ResourceType)
{
Debug.Assert(target != null, "Target resource set cannot be null");
this.target = target;
}
#pragma warning restore 618
///
/// Retrieves the resource set referred to by this input reference expression
///
internal ResourceExpression Target
{
get { return this.target; }
}
///
/// Retargets this input reference to point to the resource set specified by .
///
/// The that this input reference should use as its target
internal void OverrideTarget(ResourceSetExpression newTarget)
{
Debug.Assert(newTarget != null, "Resource set cannot be null");
Debug.Assert(newTarget.ResourceType.Equals(this.Type), "Cannot reference a resource set with a different resource type");
this.target = newTarget;
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Respresents a reference to a resource set in a resource bound expression tree.
//
//
// @owner [....]
//---------------------------------------------------------------------
namespace System.Data.Services.Client
{
using System;
using System.Diagnostics;
using System.Linq.Expressions;
///
/// Represents a reference to a bound resource set in the resource path.
/// The type of the input reference is the element type of the set.
///
///
/// Because the type of the input reference is the element type of the set,
/// it can be used to indicate what a range variable ranges over.
///
/// For example, in input.Select(b => b.id), 'input' is an IQueryable of T,
/// and 'b' is a parameter of type T. 'b' can be rebound as an input reference
/// to 'input' by the InputBinder, which helps in query analysis and
/// translation.
///
[DebuggerDisplay("InputReferenceExpression -> {Type}")]
internal sealed class InputReferenceExpression : Expression
{
/// The resource or set referred to by this input reference expression
private ResourceExpression target;
///
/// Constructs a new input reference expression that refers to the specified resource set
///
/// The target resource set that the new expression will reference
#pragma warning disable 618
internal InputReferenceExpression(ResourceExpression target)
: base((ExpressionType)ResourceExpressionType.InputReference, target.ResourceType)
{
Debug.Assert(target != null, "Target resource set cannot be null");
this.target = target;
}
#pragma warning restore 618
///
/// Retrieves the resource set referred to by this input reference expression
///
internal ResourceExpression Target
{
get { return this.target; }
}
///
/// Retargets this input reference to point to the resource set specified by .
///
/// The that this input reference should use as its target
internal void OverrideTarget(ResourceSetExpression newTarget)
{
Debug.Assert(newTarget != null, "Resource set cannot be null");
Debug.Assert(newTarget.ResourceType.Equals(this.Type), "Cannot reference a resource set with a different resource type");
this.target = newTarget;
}
}
}
// 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
- XPathSelfQuery.cs
- X509Extension.cs
- ResourceProviderFactory.cs
- mongolianshape.cs
- MachineKeyConverter.cs
- SymbolMethod.cs
- PropertyEmitterBase.cs
- TreeNodeStyleCollection.cs
- ObjectDisposedException.cs
- AmbientValueAttribute.cs
- AsyncPostBackErrorEventArgs.cs
- SQLString.cs
- Soap.cs
- ImageMetadata.cs
- Timer.cs
- InkCollectionBehavior.cs
- QilFunction.cs
- AnnotationResource.cs
- BamlLocalizationDictionary.cs
- DbConnectionPoolCounters.cs
- GridViewSortEventArgs.cs
- TreeViewAutomationPeer.cs
- GroupBox.cs
- AttributeCollection.cs
- EllipticalNodeOperations.cs
- IdleTimeoutMonitor.cs
- CancelEventArgs.cs
- XMLDiffLoader.cs
- WindowsEditBox.cs
- TokenBasedSet.cs
- WebDisplayNameAttribute.cs
- mediaeventargs.cs
- DesignerOptionService.cs
- MeasurementDCInfo.cs
- BamlMapTable.cs
- DebugHandleTracker.cs
- WebPartCatalogAddVerb.cs
- OdbcRowUpdatingEvent.cs
- TypedReference.cs
- StatusBarPanelClickEvent.cs
- Geometry.cs
- MetadataFile.cs
- ButtonChrome.cs
- ConfigurationElement.cs
- GregorianCalendarHelper.cs
- DecimalConverter.cs
- mediaeventshelper.cs
- ColumnReorderedEventArgs.cs
- ParseHttpDate.cs
- WebPartEditorApplyVerb.cs
- HorizontalAlignConverter.cs
- MetadataHelper.cs
- AppDomainProtocolHandler.cs
- NonClientArea.cs
- PolicyManager.cs
- ComponentCollection.cs
- COM2PictureConverter.cs
- PersonalizationProvider.cs
- FrameworkName.cs
- LocalValueEnumerator.cs
- TreeNodeCollection.cs
- ListenerConstants.cs
- DataRowView.cs
- ApplicationActivator.cs
- OutputCacheSettingsSection.cs
- Geometry.cs
- TcpConnectionPoolSettings.cs
- RectAnimationClockResource.cs
- SourceLineInfo.cs
- EntityConnection.cs
- GridPatternIdentifiers.cs
- DeobfuscatingStream.cs
- xsdvalidator.cs
- InputElement.cs
- ExtendedPropertyInfo.cs
- PrefixQName.cs
- Int64KeyFrameCollection.cs
- DrawToolTipEventArgs.cs
- TemplateFactory.cs
- InheritanceAttribute.cs
- ImageKeyConverter.cs
- TransformValueSerializer.cs
- ScriptResourceInfo.cs
- HttpStreamFormatter.cs
- TextProperties.cs
- VSDExceptions.cs
- ErrorFormatterPage.cs
- XmlDataSource.cs
- IncrementalCompileAnalyzer.cs
- ErrorStyle.cs
- LinkGrep.cs
- SoapExtensionTypeElement.cs
- SmtpFailedRecipientException.cs
- SqlUtils.cs
- MobileCategoryAttribute.cs
- DispatcherFrame.cs
- CharUnicodeInfo.cs
- BitmapDecoder.cs
- Thread.cs
- InputLanguageManager.cs