AsyncCodeActivity Class

.NET Framework (current version)
 

Manages asynchronous code activity execution from start to completion. This is an abstract class.

Namespace:   System.Activities
Assembly:  System.Activities (in System.Activities.dll)

System.Object
  System.Activities.Activity
    System.Activities.AsyncCodeActivity
      System.Activities.Statements.InvokeMethod

[<AbstractClass>]
type AsyncCodeActivity = 
    class
        inherit Activity
    end

NameDescription
System_CAPS_protmethodAsyncCodeActivity()

Creates a new instance of the AsyncCodeActivity class.

NameDescription
System_CAPS_protpropertyCacheId

Gets the identifier of the cache that is unique within the scope of the workflow definition.(Inherited from Activity.)

System_CAPS_protpropertyConstraints

Gets a collection of Constraint activities that can be configured to provide validation for the Activity.(Inherited from Activity.)

System_CAPS_pubpropertyDisplayName

Gets or sets an optional friendly name that is used for debugging, validation, exception handling, and tracking.(Inherited from Activity.)

System_CAPS_pubpropertyId

Gets an identifier that is unique in the scope of the workflow definition.(Inherited from Activity.)

System_CAPS_protpropertyImplementation

Gets null or throws an error when there is an attempt to set the value of this property.(Overrides Activity.Implementation.)

System_CAPS_protpropertyImplementationVersion

Gets or sets the implementation version of the activity.(Overrides Activity.ImplementationVersion.)

NameDescription
System_CAPS_protmethodBeginExecute(AsyncCodeActivityContext, AsyncCallback, Object)

When implemented in a derived class and using the specified execution context, callback method, and user state, enqueues an asynchronous activity in a run-time workflow.

System_CAPS_protmethodCacheMetadata(ActivityMetadata)

Not implemented. Use CacheMetadata instead.(Overrides Activity.CacheMetadata(ActivityMetadata).)

System_CAPS_protmethodCacheMetadata(CodeActivityMetadata)

Serves as a virtual method and converts information obtained by cache reflection into arguments for an asynchronous activity.

System_CAPS_protmethodCancel(AsyncCodeActivityContext)

When implemented in a derived class and using the specified execution environment information, notifies the workflow runtime that the asynchronous activity operation has reached an early completion. Serves as a virtual method.

System_CAPS_protmethodEndExecute(AsyncCodeActivityContext, IAsyncResult)

When implemented in a derived class and using the specified execution environment information, notifies the workflow runtime that the associated asynchronous activity operation has completed.

System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_protmethodFinalize()

Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_protmethodMemberwiseClone()

Creates a shallow copy of the current Object.(Inherited from Object.)

System_CAPS_protmethodOnCreateDynamicUpdateMap(UpdateMapMetadata, Activity)

Raises an event when creating a map for the dynamic update.(Overrides Activity.OnCreateDynamicUpdateMap(UpdateMapMetadata, Activity).)

System_CAPS_pubmethodShouldSerializeDisplayName()

Indicates whether the DisplayName property should be serialized.(Inherited from Activity.)

System_CAPS_pubmethodToString()

Returns a String that contains the Id and DisplayName of the Activity.(Inherited from Activity.)

The following example shows how to derive a class from AsyncCodeActivity to create a custom activity.

public sealed class FileWriter : AsyncCodeActivity
{
    public FileWriter()
        : base() 
    { 
    }
    protected override IAsyncResult BeginExecute(AsyncCodeActivityContext context, AsyncCallback callback, object state)
    {
        string tempFileName = Path.GetTempFileName();
        Console.WriteLine("Writing to file: " + tempFileName);

        FileStream file = File.Open(tempFileName, FileMode.Create);

        context.UserState = file;

        byte[] bytes = UnicodeEncoding.Unicode.GetBytes("123456789");
        return file.BeginWrite(bytes, 0, bytes.Length, callback, state);
    }
    protected override void EndExecute(AsyncCodeActivityContext context, IAsyncResult result)
    {
        FileStream file = (FileStream)context.UserState;

        try
        {
            file.EndWrite(result);
            file.Flush();
        }
        finally
        {
            file.Close();
        }
    }
}

.NET Framework
Available since 4.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: