Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Expressions / ArgumentValue.cs / 1305376 / ArgumentValue.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 ArgumentValue: CodeActivity { RuntimeArgument targetArgument; public ArgumentValue() { } public ArgumentValue(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 (!TypeHelper.AreTypesCompatible(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 T value) { if (this.targetArgument == null) { throw FxTrace.Exception.AsError(new InvalidOperationException(SR.UnopenedActivitiesCannotBeExecuted(this.DisplayName))); } try { context.AllowChainedEnvironmentAccess = true; value = context.GetValue (this.targetArgument); } finally { context.AllowChainedEnvironmentAccess = false; } return true; } protected override T 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
- UserControl.cs
- DateTimeSerializationSection.cs
- NamedPipeTransportElement.cs
- UserInitiatedNavigationPermission.cs
- CodeDomSerializerException.cs
- UIServiceHelper.cs
- StylusPoint.cs
- GetMemberBinder.cs
- MappingException.cs
- HScrollBar.cs
- CollectionDataContract.cs
- XmlValidatingReaderImpl.cs
- Dynamic.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- SqlParameterizer.cs
- MimeBasePart.cs
- MetadataExchangeBindings.cs
- PublisherMembershipCondition.cs
- OleDbTransaction.cs
- TextInfo.cs
- FrameworkRichTextComposition.cs
- Bezier.cs
- DesignTimeTemplateParser.cs
- WebPartEventArgs.cs
- NamedElement.cs
- SystemKeyConverter.cs
- PolyQuadraticBezierSegment.cs
- ListBase.cs
- FilterException.cs
- StateMachineWorkflow.cs
- CryptographicAttribute.cs
- ComPlusSynchronizationContext.cs
- ProfileSettings.cs
- TypeSemantics.cs
- SevenBitStream.cs
- IconHelper.cs
- Rect3DValueSerializer.cs
- HandlerFactoryWrapper.cs
- PropertyPath.cs
- TranslateTransform.cs
- XmlSchemaSimpleContentExtension.cs
- DeploymentExceptionMapper.cs
- VerificationException.cs
- SqlServices.cs
- Utils.cs
- AddIn.cs
- FontDriver.cs
- entityreference_tresulttype.cs
- WindowsRegion.cs
- XPathChildIterator.cs
- PageCatalogPartDesigner.cs
- PointConverter.cs
- Size3DValueSerializer.cs
- HtmlInputImage.cs
- QueryContinueDragEventArgs.cs
- ViewDesigner.cs
- ProcessHostMapPath.cs
- BamlLocalizableResourceKey.cs
- ControlParameter.cs
- ContainerParaClient.cs
- WinFormsComponentEditor.cs
- ApplicationHost.cs
- AxHost.cs
- TypeSystemHelpers.cs
- TimeManager.cs
- PageThemeParser.cs
- DependencySource.cs
- StateDesigner.cs
- GeometryCombineModeValidation.cs
- EditorPartChrome.cs
- XpsFilter.cs
- RecordsAffectedEventArgs.cs
- reliableinputsessionchannel.cs
- ValidationErrorEventArgs.cs
- TemplatedMailWebEventProvider.cs
- GenericsInstances.cs
- WebContext.cs
- UriTemplateCompoundPathSegment.cs
- SchemaLookupTable.cs
- RegexGroup.cs
- LinkClickEvent.cs
- DataGridViewHitTestInfo.cs
- codemethodreferenceexpression.cs
- ObjectContextServiceProvider.cs
- EntityKeyElement.cs
- DataGridTextBoxColumn.cs
- ByteKeyFrameCollection.cs
- codemethodreferenceexpression.cs
- DataGridViewCellFormattingEventArgs.cs
- ResourceProviderFactory.cs
- DayRenderEvent.cs
- TextRenderer.cs
- ListSourceHelper.cs
- DataServiceQueryOfT.cs
- XmlSchemaObjectTable.cs
- CodeArgumentReferenceExpression.cs
- UniqueEventHelper.cs
- Dispatcher.cs
- GridViewSelectEventArgs.cs
- TraceFilter.cs