Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Expressions / VariableReference.cs / 1305376 / VariableReference.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities.Expressions { using System.Linq.Expressions; using System.Runtime; public sealed class VariableReference: CodeActivity >, IExpressionContainer { public VariableReference() : base() { } public VariableReference(Variable variable) : base() { this.Variable = variable; } public Variable Variable { get; set; } Expression IExpressionContainer.Expression { get { return ExpressionUtilities.CreateIdentifierExpression(this.Variable); } } protected override void CacheMetadata(CodeActivityMetadata metadata) { if (this.Variable == null) { metadata.AddValidationError(SR.VariableMustBeSet); } else { if (!(this.Variable is Variable )) { metadata.AddValidationError(SR.VariableTypeInvalid(this.Variable, typeof(T), this.Variable.Type)); } if (!this.Variable.IsInTree) { metadata.AddValidationError(SR.VariableShouldBeOpen(this.Variable.Name)); } if (!metadata.Environment.IsVisible(this.Variable)) { metadata.AddValidationError(SR.VariableNotVisible(this.Variable.Name)); } if (VariableModifiersHelper.IsReadOnly(Variable.Modifiers)) { metadata.AddValidationError(SR.VariableIsReadOnly(this.Variable.Name)); } } } public override string ToString() { if (Variable != null && !string.IsNullOrEmpty(Variable.Name)) { return Variable.Name; } return base.ToString(); } internal override bool TryGetValue(ActivityContext context, out Location value) { try { context.AllowChainedEnvironmentAccess = true; value = context.GetLocation (this.Variable); } finally { context.AllowChainedEnvironmentAccess = false; } return true; } protected override Location Execute(CodeActivityContext context) { return ExecuteWithTryGetValue(context); } } } // 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
- MoveSizeWinEventHandler.cs
- Bits.cs
- BufferModeSettings.cs
- BCLDebug.cs
- ExtensionSimplifierMarkupObject.cs
- ActiveXSite.cs
- HandoffBehavior.cs
- ServiceDebugElement.cs
- StringFormat.cs
- ValidationSummaryDesigner.cs
- AspNetRouteServiceHttpHandler.cs
- SqlTransaction.cs
- PerformanceCountersElement.cs
- ImageSourceValueSerializer.cs
- NegatedCellConstant.cs
- AncillaryOps.cs
- QuerySafeNavigator.cs
- AsyncOperationLifetimeManager.cs
- DatePickerAutomationPeer.cs
- DetailsViewRow.cs
- Image.cs
- Rijndael.cs
- TextElementCollection.cs
- BuilderPropertyEntry.cs
- InvokeWebService.cs
- DockAndAnchorLayout.cs
- IPipelineRuntime.cs
- StatusBar.cs
- ISessionStateStore.cs
- PeekCompletedEventArgs.cs
- XmlFormatExtensionAttribute.cs
- ContextStaticAttribute.cs
- AssociationSetMetadata.cs
- StorageBasedPackageProperties.cs
- ReadOnlyDataSourceView.cs
- StringCollectionMarkupSerializer.cs
- ClaimTypes.cs
- SafeThemeHandle.cs
- BinaryConverter.cs
- DataTableTypeConverter.cs
- DbDataSourceEnumerator.cs
- UserPersonalizationStateInfo.cs
- AssemblyBuilder.cs
- DesignerWidgets.cs
- CharStorage.cs
- ListControl.cs
- Shared.cs
- InputEventArgs.cs
- SchemaImporterExtensionElement.cs
- Overlapped.cs
- EntityWrapper.cs
- DataGridViewCheckBoxCell.cs
- PowerStatus.cs
- SecurityToken.cs
- FormatterServices.cs
- DataGridTextBoxColumn.cs
- Walker.cs
- MailMessage.cs
- InProcStateClientManager.cs
- SmiTypedGetterSetter.cs
- EntityTypeEmitter.cs
- MenuStrip.cs
- EventHandlerList.cs
- ObjectComplexPropertyMapping.cs
- ImageClickEventArgs.cs
- DynamicRendererThreadManager.cs
- DictionaryBase.cs
- BaseCodePageEncoding.cs
- StartUpEventArgs.cs
- DateTimeStorage.cs
- EdmConstants.cs
- TargetInvocationException.cs
- DrawListViewSubItemEventArgs.cs
- BitmapEffectOutputConnector.cs
- AnimatedTypeHelpers.cs
- _Events.cs
- HostProtectionPermission.cs
- SSmlParser.cs
- Function.cs
- DataKey.cs
- DataRowChangeEvent.cs
- DependencyPropertyAttribute.cs
- AssemblyNameProxy.cs
- PermissionSetEnumerator.cs
- PnrpPeerResolverElement.cs
- AuthenticateEventArgs.cs
- WCFModelStrings.Designer.cs
- SQLInt64.cs
- SessionStateUtil.cs
- CachedBitmap.cs
- SafeBitVector32.cs
- SecurityTokenResolver.cs
- SystemInformation.cs
- HitTestWithPointDrawingContextWalker.cs
- NamespaceDecl.cs
- BitmapEffectCollection.cs
- MethodRental.cs
- TextRangeSerialization.cs
- ParameterToken.cs
- COM2PictureConverter.cs