Как добавить параметры при вызове CreateBookmark - PullRequest
2 голосов
/ 11 января 2012

У меня есть NativeActivity, и я создаю закладку в методе Execute, чтобы я знал, где я находился в рабочем процессе.Причина, по которой я создаю закладку, заключается в том, что на складе недостаточно товара, поэтому мне нужно спросить пользователя, хочу ли я другую статью, которая есть в наличии.

Пользователь получит вопросвыбрать один из альтернативных товаров на складе.Чтобы получить альтернативные статьи, мне нужно получить их с оригинальным артикулом из рабочего процесса.

Я использую ASP .NET MVC, поэтому у меня больше нет артикула, потому что он не имеет состояния.Рабочий процесс не будет выполнен в завершенном событии, поэтому я не могу прочитать OutArguments.Мне нужно знать, как передать параметр (ы) с закладкой.

Спасибо

public sealed class AskAlternative : NativeActivity
{
    public OutArgument<string> ArticleNumber { get; set; }

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

    protected override void Execute(NativeActivityContext context)
    {
        context.CreateBookmark(ShoppingCartFlowActivityViews.AskAlternative.ToString(), Continue);
    }

    void Continue(NativeActivityContext context, Bookmark bookmark, object obj)
    {
        var tuple = (Tuple<string>)obj;

        context.SetValue(ArticleNumber, tuple.Item1);
    }

}

1 Ответ

0 голосов
/ 11 января 2012

Вы не добавляете параметры в закладку.Вместо этого вы обычно создаете закладку, а затем передаете закладку или просто ее имя вместе с любыми другими данными, которые требуются тому, кто возобновит закладку.Часто это включает расширение деятельности или рабочего процесса, но это не обязательно.

...