WorkflowApplication.ResumeBookmark Método

Definición

Inicia una operación para reanudar un marcador.Initiates an operation to resume a bookmark.

Sobrecargas

ResumeBookmark(String, Object, TimeSpan)

Inicia una operación para reanudar el marcador con el nombre especificado, utilizando el valor y el intervalo de tiempo de espera especificados.Initiates an operation to resume the bookmark with the specified name, using the specified value and time-out interval. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

ResumeBookmark(Bookmark, Object, TimeSpan)

Inicia una operación para reanudar el marcador especificado, utilizando el valor y el intervalo de tiempo de espera especificados.Initiates an operation to resume the specified bookmark, using the specified value and time-out interval. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

ResumeBookmark(Bookmark, Object)

Inicia una operación para reanudar el marcador especificado, utilizando el valor especificado.Initiates an operation to resume the specified bookmark, using the specified value. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

ResumeBookmark(String, Object)

Inicia una operación para reanudar el marcador con el nombre especificado, utilizando el valor especificado.Initiates an operation to resume the bookmark with the specified name, using the specified value. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

ResumeBookmark(String, Object, TimeSpan)

Inicia una operación para reanudar el marcador con el nombre especificado, utilizando el valor y el intervalo de tiempo de espera especificados.Initiates an operation to resume the bookmark with the specified name, using the specified value and time-out interval. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

public:
 System::Activities::BookmarkResumptionResult ResumeBookmark(System::String ^ bookmarkName, System::Object ^ value, TimeSpan timeout);
public System.Activities.BookmarkResumptionResult ResumeBookmark (string bookmarkName, object value, TimeSpan timeout);
member this.ResumeBookmark : string * obj * TimeSpan -> System.Activities.BookmarkResumptionResult
Public Function ResumeBookmark (bookmarkName As String, value As Object, timeout As TimeSpan) As BookmarkResumptionResult

Parámetros

bookmarkName
String

Nombre del marcador que se debe reanudar.The name of the bookmark to be resumed.

value
Object

Objeto pasado como parámetro al método que se invoca cuando se reanuda el marcador.An object passed as a parameter to the method that is invoked when the bookmark resumes.

timeout
TimeSpan

Intervalo de tiempo durante el cual se debe reanudar el marcador.The time interval during which the bookmark must be resumed.

Devoluciones

Resultado de la operación de reanudación del marcador.The result of the bookmark resumption operation.

Ejemplos

En el siguiente ejemplo se crea un flujo de trabajo que utiliza una actividad ReadLine que crea un objeto Bookmark.The following example creates a workflow that uses a ReadLine activity that creates a Bookmark. Se inicia el flujo de trabajo, y una vez que se ha creado el objeto Bookmark y que el flujo de trabajo está inactivo, se recopila la entrada del usuario y se reanuda el marcador.The workflow is started, and once the Bookmark is created and the workflow goes idle, the user's input is gathered and the bookmark is resumed.

public sealed class ReadLine : NativeActivity<string>
{
    [RequiredArgument]
    public InArgument<string> BookmarkName { get; set; }

    protected override void Execute(NativeActivityContext context)
    {
        // Create a Bookmark and wait for it to be resumed.
        context.CreateBookmark(BookmarkName.Get(context),
            new BookmarkCallback(OnResumeBookmark));
    }

    // NativeActivity derived activities that do asynchronous operations by calling 
    // one of the CreateBookmark overloads defined on System.Activities.NativeActivityContext 
    // must override the CanInduceIdle property and return true.
    protected override bool CanInduceIdle
    {
        get { return true; }
    }

    public void OnResumeBookmark(NativeActivityContext context, Bookmark bookmark, object obj)
    {
        // When the Bookmark is resumed, assign its value to
        // the Result argument.
        Result.Set(context, (string)obj);
    }
Variable<string> name = new Variable<string>();

Activity wf = new Sequence
{
    Variables = { name },
    Activities =
     {
         new WriteLine
         {
             Text = "What is your name?"
         },
         new ReadLine
         {
             BookmarkName = "UserName",
             Result = new OutArgument<string>(name)

         },
         new WriteLine
         {
             Text = new InArgument<string>((env) => 
                 ("Hello, " + name.Get(env)))
         }
     }
};

// Create a WorkflowApplication instance.
WorkflowApplication wfApp = new WorkflowApplication(wf);

// Workflow lifecycle events omitted except idle.
AutoResetEvent idleEvent = new AutoResetEvent(false);

wfApp.Idle = delegate(WorkflowApplicationIdleEventArgs e)
{
    idleEvent.Set();
};

// Run the workflow.
wfApp.Run();

// Wait for the workflow to go idle before gathering
// the user's input.
idleEvent.WaitOne();

// Gather the user's input and resume the bookmark.
// Bookmark resumption only occurs when the workflow
// is idle. If a call to ResumeBookmark is made and the workflow
// is not idle, ResumeBookmark blocks until the workflow becomes
// idle before resuming the bookmark.
BookmarkResumptionResult result = wfApp.ResumeBookmark("UserName", 
    Console.ReadLine());

// Possible BookmarkResumptionResult values:
// Success, NotFound, or NotReady
Console.WriteLine("BookmarkResumptionResult: {0}", result);

Comentarios

El resultado del marcador indica si la operación de reanudación se realizó correctamente o produjo un error.The bookmark result indicates whether the resumption operation succeeded or failed.

ResumeBookmark(Bookmark, Object, TimeSpan)

Inicia una operación para reanudar el marcador especificado, utilizando el valor y el intervalo de tiempo de espera especificados.Initiates an operation to resume the specified bookmark, using the specified value and time-out interval. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

public:
 System::Activities::BookmarkResumptionResult ResumeBookmark(System::Activities::Bookmark ^ bookmark, System::Object ^ value, TimeSpan timeout);
public System.Activities.BookmarkResumptionResult ResumeBookmark (System.Activities.Bookmark bookmark, object value, TimeSpan timeout);
member this.ResumeBookmark : System.Activities.Bookmark * obj * TimeSpan -> System.Activities.BookmarkResumptionResult

Parámetros

bookmark
Bookmark

Marcador que se debe reanudar.The bookmark to resume.

value
Object

Objeto pasado como parámetro al método que se invoca cuando se reanuda el marcador.An object passed as a parameter to the method that is invoked when the bookmark resumes.

timeout
TimeSpan

Intervalo de tiempo durante el cual se debe reanudar el marcador.The time interval during which the bookmark must be resumed.

Devoluciones

Resultado de la operación de reanudación del marcador.The result of the bookmark resumption operation.

Ejemplos

En el siguiente ejemplo se crea un flujo de trabajo que utiliza una actividad ReadLine que crea un objeto Bookmark.The following example creates a workflow that uses a ReadLine activity that creates a Bookmark. Se inicia el flujo de trabajo, y una vez que se ha creado el objeto Bookmark y que el flujo de trabajo está inactivo, se recopila la entrada del usuario y se reanuda el marcador.The workflow is started, and once the Bookmark is created and the workflow goes idle, the user's input is gathered and the bookmark is resumed.

public sealed class ReadLine : NativeActivity<string>
{
    [RequiredArgument]
    public InArgument<string> BookmarkName { get; set; }

    protected override void Execute(NativeActivityContext context)
    {
        // Create a Bookmark and wait for it to be resumed.
        context.CreateBookmark(BookmarkName.Get(context),
            new BookmarkCallback(OnResumeBookmark));
    }

    // NativeActivity derived activities that do asynchronous operations by calling 
    // one of the CreateBookmark overloads defined on System.Activities.NativeActivityContext 
    // must override the CanInduceIdle property and return true.
    protected override bool CanInduceIdle
    {
        get { return true; }
    }

    public void OnResumeBookmark(NativeActivityContext context, Bookmark bookmark, object obj)
    {
        // When the Bookmark is resumed, assign its value to
        // the Result argument.
        Result.Set(context, (string)obj);
    }
Variable<string> name = new Variable<string>();

Activity wf = new Sequence
{
    Variables = { name },
    Activities =
     {
         new WriteLine
         {
             Text = "What is your name?"
         },
         new ReadLine
         {
             BookmarkName = "UserName",
             Result = new OutArgument<string>(name)

         },
         new WriteLine
         {
             Text = new InArgument<string>((env) => 
                 ("Hello, " + name.Get(env)))
         }
     }
};

// Create a WorkflowApplication instance.
WorkflowApplication wfApp = new WorkflowApplication(wf);

// Workflow lifecycle events omitted except idle.
AutoResetEvent idleEvent = new AutoResetEvent(false);

wfApp.Idle = delegate(WorkflowApplicationIdleEventArgs e)
{
    idleEvent.Set();
};

// Run the workflow.
wfApp.Run();

// Wait for the workflow to go idle before gathering
// the user's input.
idleEvent.WaitOne();

// Gather the user's input and resume the bookmark.
BookmarkResumptionResult result = wfApp.ResumeBookmark(new Bookmark("UserName"), 
    Console.ReadLine(), TimeSpan.FromSeconds(15));

// Possible BookmarkResumptionResult values:
// Success, NotFound, or NotReady
Console.WriteLine("BookmarkResumptionResult: {0}", result);

Comentarios

El resultado del marcador indica si la operación de reanudación se realizó correctamente o produjo un error.The bookmark result indicates whether the resumption operation succeeded or failed.

ResumeBookmark(Bookmark, Object)

Inicia una operación para reanudar el marcador especificado, utilizando el valor especificado.Initiates an operation to resume the specified bookmark, using the specified value. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

public:
 System::Activities::BookmarkResumptionResult ResumeBookmark(System::Activities::Bookmark ^ bookmark, System::Object ^ value);
public System.Activities.BookmarkResumptionResult ResumeBookmark (System.Activities.Bookmark bookmark, object value);
member this.ResumeBookmark : System.Activities.Bookmark * obj -> System.Activities.BookmarkResumptionResult

Parámetros

bookmark
Bookmark

Marcador que se debe reanudar.The bookmark to resume.

value
Object

Objeto pasado como parámetro al método que se invoca cuando se reanuda el marcador.An object passed as a parameter to the method that is invoked when the bookmark resumes.

Devoluciones

Resultado de la operación de reanudación del marcador.The result of the bookmark resumption operation.

Ejemplos

En el siguiente ejemplo se crea un flujo de trabajo que utiliza una actividad ReadLine que crea un objeto Bookmark.The following example creates a workflow that uses a ReadLine activity that creates a Bookmark. Se inicia el flujo de trabajo, y una vez que se ha creado el objeto Bookmark y que el flujo de trabajo está inactivo, se recopila la entrada del usuario y se reanuda el marcador.The workflow is started, and once the Bookmark is created and the workflow goes idle, the user's input is gathered and the bookmark is resumed.

public sealed class ReadLine : NativeActivity<string>
{
    [RequiredArgument]
    public InArgument<string> BookmarkName { get; set; }

    protected override void Execute(NativeActivityContext context)
    {
        // Create a Bookmark and wait for it to be resumed.
        context.CreateBookmark(BookmarkName.Get(context),
            new BookmarkCallback(OnResumeBookmark));
    }

    // NativeActivity derived activities that do asynchronous operations by calling 
    // one of the CreateBookmark overloads defined on System.Activities.NativeActivityContext 
    // must override the CanInduceIdle property and return true.
    protected override bool CanInduceIdle
    {
        get { return true; }
    }

    public void OnResumeBookmark(NativeActivityContext context, Bookmark bookmark, object obj)
    {
        // When the Bookmark is resumed, assign its value to
        // the Result argument.
        Result.Set(context, (string)obj);
    }
Variable<string> name = new Variable<string>();

Activity wf = new Sequence
{
    Variables = { name },
    Activities =
     {
         new WriteLine
         {
             Text = "What is your name?"
         },
         new ReadLine
         {
             BookmarkName = "UserName",
             Result = new OutArgument<string>(name)

         },
         new WriteLine
         {
             Text = new InArgument<string>((env) => 
                 ("Hello, " + name.Get(env)))
         }
     }
};

// Create a WorkflowApplication instance.
WorkflowApplication wfApp = new WorkflowApplication(wf);

// Workflow lifecycle events omitted except idle.
AutoResetEvent idleEvent = new AutoResetEvent(false);

wfApp.Idle = delegate(WorkflowApplicationIdleEventArgs e)
{
    idleEvent.Set();
};

// Run the workflow.
wfApp.Run();

// Wait for the workflow to go idle before gathering
// the user's input.
idleEvent.WaitOne();

// Gather the user's input and resume the bookmark.
BookmarkResumptionResult result = wfApp.ResumeBookmark(new Bookmark("UserName"), 
    Console.ReadLine());

// Possible BookmarkResumptionResult values:
// Success, NotFound, or NotReady
Console.WriteLine("BookmarkResumptionResult: {0}", result);

Comentarios

El resultado del marcador indica si la operación de reanudación se realizó correctamente o produjo un error.The bookmark result indicates whether the resumption operation succeeded or failed.

ResumeBookmark(String, Object)

Inicia una operación para reanudar el marcador con el nombre especificado, utilizando el valor especificado.Initiates an operation to resume the bookmark with the specified name, using the specified value. Una actividad de una instancia de flujo de trabajo crea previamente el marcador que se va a reanudar.The bookmark to be resumed is previously created by an activity within the workflow instance.

public:
 System::Activities::BookmarkResumptionResult ResumeBookmark(System::String ^ bookmarkName, System::Object ^ value);
public System.Activities.BookmarkResumptionResult ResumeBookmark (string bookmarkName, object value);
member this.ResumeBookmark : string * obj -> System.Activities.BookmarkResumptionResult
Public Function ResumeBookmark (bookmarkName As String, value As Object) As BookmarkResumptionResult

Parámetros

bookmarkName
String

Nombre del marcador que se debe reanudar.The name of the bookmark to be resumed.

value
Object

Objeto pasado como parámetro al método que se invoca cuando se reanuda el marcador.An object passed as a parameter to the method that is invoked when the bookmark resumes.

Devoluciones

Resultado de la operación de reanudación del marcador.The result of the bookmark resumption operation.

Ejemplos

En el siguiente ejemplo se crea un flujo de trabajo que utiliza una actividad ReadLine que crea un objeto Bookmark.The following example creates a workflow that uses a ReadLine activity that creates a Bookmark. Se inicia el flujo de trabajo, y una vez que se ha creado el objeto Bookmark y que el flujo de trabajo está inactivo, se recopila la entrada del usuario y se reanuda el marcador.The workflow is started, and once the Bookmark is created and the workflow goes idle, the user's input is gathered and the bookmark is resumed.

public sealed class ReadLine : NativeActivity<string>
{
    [RequiredArgument]
    public InArgument<string> BookmarkName { get; set; }

    protected override void Execute(NativeActivityContext context)
    {
        // Create a Bookmark and wait for it to be resumed.
        context.CreateBookmark(BookmarkName.Get(context),
            new BookmarkCallback(OnResumeBookmark));
    }

    // NativeActivity derived activities that do asynchronous operations by calling 
    // one of the CreateBookmark overloads defined on System.Activities.NativeActivityContext 
    // must override the CanInduceIdle property and return true.
    protected override bool CanInduceIdle
    {
        get { return true; }
    }

    public void OnResumeBookmark(NativeActivityContext context, Bookmark bookmark, object obj)
    {
        // When the Bookmark is resumed, assign its value to
        // the Result argument.
        Result.Set(context, (string)obj);
    }
Variable<string> name = new Variable<string>();

Activity wf = new Sequence
{
    Variables = { name },
    Activities =
     {
         new WriteLine
         {
             Text = "What is your name?"
         },
         new ReadLine
         {
             BookmarkName = "UserName",
             Result = new OutArgument<string>(name)

         },
         new WriteLine
         {
             Text = new InArgument<string>((env) => 
                 ("Hello, " + name.Get(env)))
         }
     }
};

// Create a WorkflowApplication instance.
WorkflowApplication wfApp = new WorkflowApplication(wf);

// Workflow lifecycle events omitted except idle.
AutoResetEvent idleEvent = new AutoResetEvent(false);

wfApp.Idle = delegate(WorkflowApplicationIdleEventArgs e)
{
    idleEvent.Set();
};

// Run the workflow.
wfApp.Run();

// Wait for the workflow to go idle before gathering
// the user's input.
idleEvent.WaitOne();

// Gather the user's input and resume the bookmark.
// Bookmark resumption only occurs when the workflow
// is idle. If a call to ResumeBookmark is made and the workflow
// is not idle, ResumeBookmark blocks until the workflow becomes
// idle before resuming the bookmark.
BookmarkResumptionResult result = wfApp.ResumeBookmark("UserName", 
    Console.ReadLine());

// Possible BookmarkResumptionResult values:
// Success, NotFound, or NotReady
Console.WriteLine("BookmarkResumptionResult: {0}", result);

Comentarios

El resultado del marcador indica si la operación de reanudación se realizó correctamente o produjo un error.The bookmark result indicates whether the resumption operation succeeded or failed.

Se aplica a