Просто быстро наблюдения, что существует весьма важное различие между этими двумя определениями:
<Поле FieldBind = "InParam1" DesignerType = "StringBuilder" ID = "2" Текст = «Параметр Input # 1» />
сравнению с:
<Поле FieldBind = "InParam1" ID = "2" Текст = «Параметр Input # 1» />
Первый показывает как это в СДПГ:
во время последнего шоу, как этот:
Я не уверен, насколько полезны эти экранные снимки, но я приложить усилия, чтобы сделать их, так что вы должны просматривать их 🙂
Это наблюдение: Класс StringBuilder позволяет создавать строки (Очевидно, что) смешивая воедино строковых литералов и данные рабочего процесса (через "добавить подстановку" кнопку в левом нижнем углу). Когда вы используете кнопку Добавить подстановку, Вставляет маркер в форме"[%маркер %]". Когда SharePoint вызывает настраиваемое действие, (Код C# в моем случае), SharePoint проходит сам маркер, не значение маркера. Если вы используете тип конструктора по умолчанию (второй тип), SharePoint расширяет маркер и передает фактическое значение маркера в ваши действия.
Класс StringBuilder = плохо, по умолчанию тип конструктора = хорошее.
Конечно, Это не то, что я имею в виду действительно. Только не пытайтесь и передать параметр для пользовательских действий, когда конструктор типа = StringBuilder. Используйте тип конструктора по умолчанию и цепь StringBuilder для него вверх-противостоьте если вам нужно построить сложные строки в рабочем (Кстати это именно то, что один делает для создания динамической теме для действия электронной почты, но это тема для другой записи блога, Хар Хар).
<конец />
Разработка настраиваемого действия рабочего процесса очень проста, Попробуйте это,
http://sarangasl.blogspot.com/2009/11/sharepoint-workflow-actions-for.html