Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Expressions / ArgumentReference.cs / 1305376 / ArgumentReference.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities.Expressions { using System.Collections.Generic; using System.Linq.Expressions; using System.Runtime; using System.Windows.Markup; public sealed class ArgumentReference: CodeActivity > { RuntimeArgument targetArgument; public ArgumentReference() { } public ArgumentReference(string argumentName) { this.ArgumentName = argumentName; } public string ArgumentName { get; set; } protected override void CacheMetadata(CodeActivityMetadata metadata) { this.targetArgument = null; if (string.IsNullOrEmpty(this.ArgumentName)) { metadata.AddValidationError(SR.ArgumentNameRequired); } else { this.targetArgument = ActivityUtilities.FindArgument(this.ArgumentName, this); if (this.targetArgument == null) { metadata.AddValidationError(SR.ArgumentNotFound(this.ArgumentName)); } else if (this.targetArgument.Type != typeof(T)) { metadata.AddValidationError(SR.ArgumentTypeMustBeCompatible(this.ArgumentName, this.targetArgument.Type, typeof(T))); } } } public override string ToString() { if (!string.IsNullOrEmpty(this.ArgumentName)) { return this.ArgumentName; } return base.ToString(); } internal override bool TryGetValue(ActivityContext context, out Location value) { try { context.AllowChainedEnvironmentAccess = true; value = context.GetLocation (this.targetArgument); } 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
- DataGridItem.cs
- BrowserCapabilitiesFactoryBase.cs
- ToolStripGrip.cs
- HttpListenerPrefixCollection.cs
- TextEditorLists.cs
- unsafenativemethodstextservices.cs
- DataColumnMapping.cs
- TypeDelegator.cs
- MemberAssignmentAnalysis.cs
- CodeRemoveEventStatement.cs
- DBNull.cs
- ContractTypeNameElement.cs
- CommandLibraryHelper.cs
- RealizationDrawingContextWalker.cs
- HttpHeaderCollection.cs
- MergeLocalizationDirectives.cs
- WebEventCodes.cs
- Bold.cs
- ObjectTag.cs
- XamlPathDataSerializer.cs
- RenderContext.cs
- DateTimeConverter.cs
- StreamSecurityUpgradeInitiatorBase.cs
- ApplicationException.cs
- SqlProviderServices.cs
- Renderer.cs
- RestHandler.cs
- HtmlInputText.cs
- BinaryMethodMessage.cs
- XmlElementAttribute.cs
- GeneralTransform2DTo3D.cs
- RealizationDrawingContextWalker.cs
- RegexParser.cs
- ImplicitInputBrush.cs
- StylusPointProperty.cs
- ColorBlend.cs
- KeyMatchBuilder.cs
- UnsafePeerToPeerMethods.cs
- PTConverter.cs
- FontFamilyIdentifier.cs
- SignedXml.cs
- ValidatorCollection.cs
- CultureInfoConverter.cs
- DoubleLink.cs
- CompositeFontInfo.cs
- SafeNativeMethods.cs
- WebPartUtil.cs
- DuplicateContext.cs
- HostExecutionContextManager.cs
- AttachedPropertyDescriptor.cs
- BitmapDownload.cs
- StaticSiteMapProvider.cs
- TargetException.cs
- GenericTypeParameterBuilder.cs
- BitmapEffectvisualstate.cs
- PermissionListSet.cs
- Deflater.cs
- ToolZone.cs
- RTLAwareMessageBox.cs
- PeerHelpers.cs
- Serializer.cs
- Bezier.cs
- PtsCache.cs
- ADConnectionHelper.cs
- WrappedIUnknown.cs
- ProxyDataContractResolver.cs
- Behavior.cs
- RegexParser.cs
- CommandID.cs
- ItemContainerGenerator.cs
- RootBrowserWindow.cs
- ExceptionHelpers.cs
- MulticastOption.cs
- DataObjectPastingEventArgs.cs
- SchemaImporterExtension.cs
- LabelAutomationPeer.cs
- GeometryValueSerializer.cs
- RegisteredArrayDeclaration.cs
- SqlCrossApplyToCrossJoin.cs
- Transform3D.cs
- PrivateFontCollection.cs
- ComplexType.cs
- Claim.cs
- Int32AnimationBase.cs
- OleDbConnectionInternal.cs
- CanExecuteRoutedEventArgs.cs
- PropertyInfoSet.cs
- BooleanConverter.cs
- BaseTransportHeaders.cs
- Tuple.cs
- UpdateTracker.cs
- WorkflowMarkupSerializationException.cs
- ContractCodeDomInfo.cs
- RowCache.cs
- SqlCacheDependency.cs
- PanningMessageFilter.cs
- CodeTypeParameter.cs
- ServiceModelExtensionElement.cs
- User.cs
- ResourceDescriptionAttribute.cs