首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在没有用户输入的情况下使用书签?

如何在没有用户输入的情况下使用书签?
EN

Stack Overflow用户
提问于 2014-08-21 14:33:39
回答 2查看 684关注 0票数 0

我是Windows workflow的新手,我正在使用4.5创建一个长期运行的工作流。我做了很多在线搜索,试图找到一种不需要用户输入就创建书签和ResumeBookmark的方法。到目前为止,我所读到的信息都需要一个Console.ReadLine (用户输入)才能恢复书签。书签只用于人类输入吗?我现在正在使用延迟活动,但想使用Bookmark。

我的Workflow.xaml是这样的

  1. 发送电子邮件给审查员,他们被要求完成各自的任务。这封电子邮件只是一个通知。没有批准或拒绝按钮。
  2. 延迟活动。这是为了使工作流在持久性数据库中持久存在。
  3. 检查另一个数据库,看看评审人员是否更新了一些数据。
  4. 如果审阅者尚未更新数据,请再次延迟活动。
  5. 向审批者发送电子邮件。如果数据被更新。审批者的反应将记录在数据库中。这封电子邮件只是一个通知。
  6. 再次延迟活动,等待审批者在数据库中更新响应。

诸若此类。

我真的很感谢你的帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-22 10:28:51

书签不需要用户输入。

在活动中创建书签:

代码语言:javascript
复制
context.CreateBookmark("bookmarkName", new BookmarkCallback(OnResumeBookmark));

其中"OnResumeBookmark“是您活动中的一种方法。

然后,当您继续工作流程时,您将使用以下内容:

代码语言:javascript
复制
WorkflowApplication wfApp= new WorkflowApplication(new NameOFWorkflow());

wfApp.Run();

wfApp.ResumeBookmark("bookmarkName");

然后OnResumeBookmark将执行。

这是一个更完整的版本http://msdn.microsoft.com/en-us/library/ee191721(v=vs.110).aspx

关于console.read的内容只是向您展示书签名称如何成为变量而不是字符串的一种方式:

代码语言:javascript
复制
context.CreateBookmark(BookmarkName.Get(context),  <-- get name from the InArgumen
票数 1
EN

Stack Overflow用户

发布于 2014-09-29 20:45:44

这里是一个定制活动的示例代码:

代码语言:javascript
复制
public sealed class WaitForResponse<TResult> : NativeActivity<TResult>
{
    public string ResponseName { get; set; }

    protected override bool CanInduceIdle
    {
        get
        {
            return true;
        }
    }

    protected override void Execute(NativeActivityContext context)
    {
        context.CreateBookmark(this.ResponseName, new BookmarkCallback(this.ReceivedResponse));

        // Put code here...
    }

    void ReceivedResponse(NativeActivityContext context, Bookmark bookmark, object obj)
    {
        this.Result.Set(context, (TResult)obj);
    }

此活动将运行该方法,执行并等待(持久化/卸载)直到一个ResumeBookmark。ResumeBookmark可以是WCF调用或WorkflowApplication.ResumeBookmark调用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25429099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档