Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx40 / System.Activities / System / Activities / Statements / Assign.cs / 1305376 / Assign.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.Activities.Statements { using System.Activities; using System.Collections.ObjectModel; using System.ComponentModel; using System.Runtime; public sealed class Assign : CodeActivity { public Assign() : base() { } [RequiredArgument] [DefaultValue(null)] public OutArgument To { get; set; } [RequiredArgument] [DefaultValue(null)] public InArgument Value { get; set; } protected override void CacheMetadata(CodeActivityMetadata metadata) { Collectionarguments = new Collection (); Type valueType = TypeHelper.ObjectType; if (this.Value != null) { valueType = this.Value.ArgumentType; } RuntimeArgument valueArgument = new RuntimeArgument("Value", valueType, ArgumentDirection.In, true); metadata.Bind(this.Value, valueArgument); Type toType = TypeHelper.ObjectType; if (this.To != null) { toType = this.To.ArgumentType; } RuntimeArgument toArgument = new RuntimeArgument("To", toType, ArgumentDirection.Out, true); metadata.Bind(this.To, toArgument); arguments.Add(valueArgument); arguments.Add(toArgument); metadata.SetArgumentsCollection(arguments); if (this.Value != null && this.To != null) { if (!TypeHelper.AreTypesCompatible(this.Value.ArgumentType, this.To.ArgumentType)) { metadata.AddValidationError(SR.TypeMismatchForAssign( this.Value.ArgumentType, this.To.ArgumentType, this.DisplayName)); } } } protected override void Execute(CodeActivityContext context) { this.To.Set(context, this.Value.Get(context)); } } public sealed class Assign : CodeActivity { public Assign() : base() { } [RequiredArgument] [DefaultValue(null)] public OutArgument To { get; set; } [RequiredArgument] [DefaultValue(null)] public InArgument Value { get; set; } protected override void CacheMetadata(CodeActivityMetadata metadata) { Collection arguments = new Collection (); RuntimeArgument valueArgument = new RuntimeArgument("Value", typeof(T), ArgumentDirection.In, true); metadata.Bind(this.Value, valueArgument); RuntimeArgument toArgument = new RuntimeArgument("To", typeof(T), ArgumentDirection.Out, true); metadata.Bind(this.To, toArgument); arguments.Add(valueArgument); arguments.Add(toArgument); metadata.SetArgumentsCollection(arguments); } protected override void Execute(CodeActivityContext context) { context.SetValue(this.To, this.Value.Get(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
- DateTimeFormatInfoScanner.cs
- XPathScanner.cs
- SQLString.cs
- QueryableFilterRepeater.cs
- WebWorkflowRole.cs
- CollectionConverter.cs
- TypeToken.cs
- PointKeyFrameCollection.cs
- DefaultValueAttribute.cs
- RuntimeCompatibilityAttribute.cs
- HttpContext.cs
- TimeSpanSecondsConverter.cs
- UrlParameterWriter.cs
- PrePrepareMethodAttribute.cs
- Internal.cs
- GenericTypeParameterBuilder.cs
- DataKeyArray.cs
- JoinGraph.cs
- MonitorWrapper.cs
- RevocationPoint.cs
- ProfileParameter.cs
- NamedPipeProcessProtocolHandler.cs
- Mapping.cs
- Ref.cs
- RegexCompilationInfo.cs
- SpeechUI.cs
- HelpHtmlBuilder.cs
- SchemaNotation.cs
- FlowDocumentPaginator.cs
- XmlSchemaType.cs
- MissingFieldException.cs
- RelationalExpressions.cs
- TimerElapsedEvenArgs.cs
- Utils.cs
- WizardStepBase.cs
- localization.cs
- MimeMapping.cs
- DataControlReferenceCollection.cs
- Nullable.cs
- CalendarTable.cs
- PropertyToken.cs
- MiniAssembly.cs
- DocumentPageHost.cs
- ColorAnimationUsingKeyFrames.cs
- AssemblyNameUtility.cs
- Stream.cs
- MobileTextWriter.cs
- OracleConnectionStringBuilder.cs
- DataTransferEventArgs.cs
- IsolationInterop.cs
- FormViewCommandEventArgs.cs
- WebPartDisplayModeCancelEventArgs.cs
- BaseEntityWrapper.cs
- ObjectListItem.cs
- SafeNativeMethods.cs
- MessageHeaderDescriptionCollection.cs
- NavigationCommands.cs
- WebServiceReceive.cs
- DependencyObject.cs
- CombinedGeometry.cs
- HotSpot.cs
- HtmlInputControl.cs
- X509ChainPolicy.cs
- SmtpNegotiateAuthenticationModule.cs
- ConfigXmlElement.cs
- FragmentQuery.cs
- NominalTypeEliminator.cs
- SafeReversePInvokeHandle.cs
- CharConverter.cs
- CodeGenerator.cs
- odbcmetadatacolumnnames.cs
- SeekStoryboard.cs
- ConnectionPoolManager.cs
- AttachedPropertyMethodSelector.cs
- SqlGatherConsumedAliases.cs
- RotateTransform.cs
- IRCollection.cs
- ExpandedProjectionNode.cs
- ColumnHeaderCollectionEditor.cs
- ExtensionWindowResizeGrip.cs
- KnownBoxes.cs
- AsymmetricSignatureDeformatter.cs
- RegexCapture.cs
- NetworkInformationException.cs
- UpdatePanel.cs
- InfoCardTraceRecord.cs
- BitmapEffectInput.cs
- InheritedPropertyDescriptor.cs
- TagMapCollection.cs
- HtmlTableRow.cs
- MarshalByRefObject.cs
- UserControl.cs
- PermissionSet.cs
- CalendarItem.cs
- TabRenderer.cs
- CompiledRegexRunner.cs
- XmlIncludeAttribute.cs
- Pointer.cs
- IgnoreFileBuildProvider.cs
- ListControlConvertEventArgs.cs