다음을 통해 공유


WorkflowHostingEndpoint.OnResolveBookmark 메서드

정의

워크플로 인스턴스에서 다시 시작할 책갈피를 반환하려면 재정의합니다.

protected public:
 virtual System::Activities::Bookmark ^ OnResolveBookmark(cli::array <System::Object ^> ^ inputs, System::ServiceModel::OperationContext ^ operationContext, System::ServiceModel::Activities::WorkflowHostingResponseContext ^ responseContext, [Runtime::InteropServices::Out] System::Object ^ % value);
protected internal virtual System.Activities.Bookmark OnResolveBookmark (object[] inputs, System.ServiceModel.OperationContext operationContext, System.ServiceModel.Activities.WorkflowHostingResponseContext responseContext, out object value);
abstract member OnResolveBookmark : obj[] * System.ServiceModel.OperationContext * System.ServiceModel.Activities.WorkflowHostingResponseContext * obj -> System.Activities.Bookmark
override this.OnResolveBookmark : obj[] * System.ServiceModel.OperationContext * System.ServiceModel.Activities.WorkflowHostingResponseContext * obj -> System.Activities.Bookmark
Protected Friend Overridable Function OnResolveBookmark (inputs As Object(), operationContext As OperationContext, responseContext As WorkflowHostingResponseContext, ByRef value As Object) As Bookmark

매개 변수

inputs
Object[]

서비스 작업에 대한 입력입니다.

operationContext
OperationContext

호출되는 서비스 작업의 실행 컨텍스트입니다.

responseContext
WorkflowHostingResponseContext

요청/회신 계약을 위해 메시지 소스에 회신을 보내는 데 사용할 수 있는 WorkflowHostingResponseContext 개체입니다.

value
Object

책갈피가 다시 시작될 때 워크플로 인스턴스에 다시 전달될 값입니다.

반환

Bookmark

책갈피입니다.

예제

다음 예제에서는 OnResolveBookmark 메서드를 구현하는 방법을 보여 줍니다.

protected override Bookmark OnResolveBookmark(object[] inputs, OperationContext operationContext, WorkflowHostingResponseContext responseContext, out object value)
{
    Bookmark bookmark = null;
    value = null;
    if (operationContext.IncomingMessageHeaders.Action.EndsWith("ResumeBookmark"))
    {
        //bookmark name supplied by client as input to IWorkflowCreation.ResumeBookmark
        bookmark = new Bookmark((string)inputs[1]);
        //value supplied by client as argument to IWorkflowCreation.ResumezBookmark
        value = (string) inputs[2];
    }
    else
    {
        throw new NotImplementedException(operationContext.IncomingMessageHeaders.Action);
    }
    return bookmark;
}

적용 대상