簡體   English   中英

在Designer中為NativeActivity添加變量 <T> 在wf4中

[英]Add variables in designer for NativeActivity<T> in wf4

我有一個擴展NativeActivity的類

我想允許從設計器向活動范圍添加變量。 如何修改活動代碼,以便設計人員讓我添加變量?

無法通過設計器在自定義活動中添加變量

我的密碼

public class MyActivity : NativeActivity<bool>
{
    public InArgument<string> SomeInArg { get; set; }

    public InArgument<object> RefInArg { get; set; }

    public WorkflowDataContext Data { get; set; }

    public Collection<Variable> Variables { get; set; }

    protected override void Execute(NativeActivityContext context)
    {
        Result.Set(context, true);
    }
}

謝謝。

令人驚訝的是,添加了一個返回空集合的getter即可解決問題。 我懷疑設計器試圖以某種方式訪問variables集合,並且當返回null時-它沒有選擇權以在設計器中設置變量。

    public Collection<Variable> Variables { get; } = new Collection<Variable>();

但是現在嘗試訪問變量導致

Activity '1.1: MyActivity' cannot access this variable 
because it is declared at the scope of activity '1.1: MyActivity'.  
An activity can only access its own implementation variables.

嘗試:

Collection<Variable> variables;
public Collection<Variable> Variables
    {
        get
        {
            if (this.variables == null)
            {
                this.variables = new Collection<Variable>();

            }
            return this.variables;
        }
    }

只有避免“訪問”問題,這才會初始化您的收藏集。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM