2012-02-27 3 views
0

Я реализую машину состояния в WF 4.0. В некоторых переходах я добавил условие, в котором я проверяю, что некоторые переменные имеют ожидаемые значения. Переменные - это перечисления и булевы, и все в порядке.Проверка нулевой переменной в условиях перехода процесса Workflow 4.0

Однако теперь я попытался оценить, когда свойство равно null. У меня есть аргумент в моем рабочем процессе, скажем, 'MyArgument'. При переходе я пытаюсь поставить условие вроде 'MyArgument.MyProperty = Nothing'. Я никогда не развивался в VB.NET, я не знаю, если я что-то упустил здесь ...

VS2010 дает следующую ошибку: «Ошибка 4 Ошибка компилятора с обработкой выражения« MyArg.MyProp = Ничего». оператор„=“не определено не для типов„ХХХХ“и

названия типа„XXXX“, являются точно такой же, и я отлажена VS2010, чтобы убедиться, что моя сборка не загружается из 2-х разных местах .

Есть ли у кого-то такая же проблема? Есть ли что-то, что мне не хватает? Как проверить, является ли свойство нулевым или нет?

BTW, я использую VS2010 SP 1, с .NET Platform Update 1 установлен на W7 64 бит.

Благодарим за помощь!

+0

Хорошо, после написания вопроса я начал забывать о загрузке нескольких сборок и т. Д. ... и искал более глупые проблемы ... MyArg.MyProperty Is Nothing отлично работает ... :) – Haplo

ответ

0

Я не уверен, что это отвечает на ваш вопрос, поскольку моя ситуация, я думаю, отличается от вашей. И я прошу прощения, если это излишне повторяет то, что вы уже хорошо разбираетесь.

У меня есть переменная с областью действия, которую я назову «WorkflowXVariable». У меня есть обычная деятельность под названием «CustomActivity». Чтобы взаимодействовать с WorkflowXvariable в коде CustomActivity, я должен сначала сделать две вещи: 1) Создайте свойство в классе CustomActivity, которое я буду использовать для ссылки на WorkflowX. Я назову это «ActivityXproperty». 2) В визуальном дизайнере, в сетке свойств для экземпляра CustomActivity, я установил ActivityXProperty в WorkflowXVariable.

Рабочий процессX может быть пустым. В коде CustomActivity я могу проверить на это:

if (ActivityXproperty == null) return;

Я наткнулся на ваше сообщение, потому что хотел бы проверить, не было ли ActivityXproperty не настроено на WorkflowXvariable, как должно было быть, - не является ли его «выражение». Я не определил способ сделать это, например, проверить, является ли значение Activity.Expression равно null.

Независимо от того, что выражение для ActivityXproperty не было настроено ни на что, или потому что WorkflowXvariable имеет значение NULL, все, что я могу проверить, - это то, имеет ли значение ActivityXproperty значение null.

Смежные вопросы