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
- MediaPlayer.cs
- X509UI.cs
- CapabilitiesPattern.cs
- Run.cs
- InputMethod.cs
- AuthenticationConfig.cs
- HttpPostedFileBase.cs
- HyperLink.cs
- LocalServiceSecuritySettings.cs
- GeometryModel3D.cs
- IncrementalCompileAnalyzer.cs
- SamlAdvice.cs
- ClientBuildManager.cs
- BaseTemplateBuildProvider.cs
- BehaviorEditorPart.cs
- AssociatedControlConverter.cs
- NetMsmqBinding.cs
- ArrayConverter.cs
- ItemDragEvent.cs
- UdpSocketReceiveManager.cs
- PathData.cs
- Object.cs
- Line.cs
- InstanceLockLostException.cs
- LogicalTreeHelper.cs
- MSAAEventDispatcher.cs
- Error.cs
- EditorZone.cs
- StateWorkerRequest.cs
- FileAuthorizationModule.cs
- RectAnimationClockResource.cs
- ImageInfo.cs
- SessionStateModule.cs
- TypeSystem.cs
- InvalidEnumArgumentException.cs
- SchemaTableColumn.cs
- TreeViewImageKeyConverter.cs
- ExpressionQuoter.cs
- BlobPersonalizationState.cs
- SerializationEventsCache.cs
- LabelAutomationPeer.cs
- ArraySet.cs
- ParameterDataSourceExpression.cs
- WebBrowserEvent.cs
- ValueProviderWrapper.cs
- DeploymentSectionCache.cs
- Config.cs
- AssemblyBuilder.cs
- URLAttribute.cs
- arabicshape.cs
- InputElement.cs
- SerialPinChanges.cs
- EntityContainerEmitter.cs
- XmlLanguageConverter.cs
- Invariant.cs
- ToolStrip.cs
- PropertyChangedEventArgs.cs
- Marshal.cs
- RelationshipManager.cs
- MemoryStream.cs
- errorpatternmatcher.cs
- FullTrustAssembly.cs
- HGlobalSafeHandle.cs
- securitycriticaldataformultiplegetandset.cs
- UntrustedRecipientException.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- LayeredChannelListener.cs
- Module.cs
- Renderer.cs
- AppDomainCompilerProxy.cs
- CommonServiceBehaviorElement.cs
- ThreadInterruptedException.cs
- UiaCoreApi.cs
- OdbcConnectionHandle.cs
- PathParser.cs
- LifetimeServices.cs
- CookieProtection.cs
- GridViewRow.cs
- XMLSyntaxException.cs
- StylusTouchDevice.cs
- CompatibleComparer.cs
- CorrelationResolver.cs
- SR.cs
- DiscoveryUtility.cs
- CollectionChangedEventManager.cs
- ToolStripItemEventArgs.cs
- TextPattern.cs
- DataServiceRequestException.cs
- TreeNode.cs
- Color.cs
- XamlWriter.cs
- OdbcDataReader.cs
- Polygon.cs
- ItemCollection.cs
- EntityDataSourceColumn.cs
- Margins.cs
- MappingException.cs
- ReferenceEqualityComparer.cs
- OuterGlowBitmapEffect.cs
- FixedSOMImage.cs