Android activity 在WF中将值从活动传递给另一个活动
我和WF一起工作。 我制作了一个名为Draft_Doc的自定义活动:Android activity 在WF中将值从活动传递给另一个活动,android-activity,workflow-foundation-4,Android Activity,Workflow Foundation 4,我和WF一起工作。 我制作了一个名为Draft_Doc的自定义活动: public sealed class Draft_Doc : CodeActivity<string> { protected override string Execute(CodeActivityContext context) { C.Send_Task_Msg(unique_name, "Draft"); return "Draft"; } }
public sealed class Draft_Doc : CodeActivity<string>
{
protected override string Execute(CodeActivityContext context)
{
C.Send_Task_Msg(unique_name, "Draft");
return "Draft";
}
}
public sealed class草稿\u Doc:code活动
{
受保护的重写字符串执行(CodeActivityContext上下文)
{
C.发送任务消息(唯一名称,“草稿”);
返回“草稿”;
}
}
我做了另一个包含书签的活动
public sealed class WaitingTheApproval : NativeActivity
{
WorkflowInstanceProxy instance;
Service1Client C = new Service1Client();
public InArgument<string> previous_stage { get; set; }
public string stageName;
protected override void CacheMetadata(NativeActivityMetadata metadata)
{
base.CacheMetadata(metadata);
metadata.AddDefaultExtensionProvider<MyExtension>(() => new MyExtension());
//RuntimeArgument argSql = new RuntimeArgument("SqlConnectionString", typeof(String), ArgumentDirection.In);
}
protected override bool CanInduceIdle
{
get { return true; }
}
protected override void Execute(NativeActivityContext context)
{
var bookmark = context.CreateBookmark("MyBookmark", BookmarkResumed);
var extension = context.GetExtension<MyExtension>();
instance = extension._instance;
stageName = context.GetValue(this.previous_stage);
stageName = previous_stage.Get(context);
WaitSome(bookmark);
}
}
公共密封类等待批准:NativeActivity
{
WorkflowInstanceProxy实例;
Service1Client C=新的Service1Client();
上一阶段公开声明{get;set;}
公共字符串stageName;
受保护的覆盖无效缓存元数据(NativeActivityMetadata)
{
base.CacheMetadata(元数据);
metadata.AddDefaultExtensionProvider(()=>newMyExtension());
//RuntimeArgument argSql=新的RuntimeArgument(“SqlConnectionString”、typeof(String)、ArgumentDirection.In);
}
受保护的覆盖布尔Caninducidel
{
获取{return true;}
}
受保护的覆盖无效执行(NativeActivityContext上下文)
{
var bookmark=context.CreateBookmark(“MyBookmark”,bookmark);
var extension=context.GetExtension();
实例=扩展。\u实例;
stageName=context.GetValue(此.previous_阶段);
stageName=previous_stage.Get(上下文);
WaitSome(书签);
}
}
我想要的是,当我在重新托管的工作流中拖放这两个活动时。我想先拖动Draft_Doc,然后将WaitingTheApproval链接到它
因此,我希望在运行时等待审批的InArgument previous_阶段中设置Draft_Doc的返回值。
是否有帮助?无法将值从一个活动直接传递到另一个活动。您应该在第一个活动中为变量赋值,并使用在第二个活动中已赋值的变量。编辑后有没有答案?:)对不起,我不知道你想做什么。您有详细说明您正在做什么的代码,但这既太多又不够。我理解您的要求(当将活动放到设计图面上时自动连接活动),但有很多方法可以做到这一点,其中一些方法相当复杂(例如,实现IActivityTemplateFactory和搜索当前工作流)。我通常在你的网站上做的是创建一个只做我需要完成的事情的原型。这让我的问题尽可能的清楚。