Я не уверен, что вы имеете в виду под "обработкой Соли через службы персистентности"? Постоянство относится только к хранению простоя рабочего процесса.
Вы могли бы иметь Задержку и кодовое действие в Последовательности в цикле Пока. При задержке рабочий процесс будет простаивать и при необходимости может быть сохранен. Однако в зависимости от того, сколько требуется состояния при сохранении рабочего процесса и / или сколько таких рабочих процессов вы бы выполняли одновременно, это может означать, что необходим более гибкий подход.
Более тонкий подход заключается в том, чтобы экстернализировать наблюдение за БД и заставить некоторую службу рабочего процесса "просмотр БД" вызвать событие, когда произошло желаемое изменение. Этот сервис будет добавлен в среду выполнения Workflow.
Для этого вам нужен сервисный контракт, который определяется Inteface с атрибутом [ExternalDataExchange]. Этот интерфейс, в свою очередь, определяет событие, которое будет вызывать служба при обнаружении желаемого изменения БД. Он также определяет метод, который Workflow может вызывать для определения того, какие изменения должен искать этот сервис. Метод должен принимать GUID экземпляра, чтобы запрашивающий экземпляр можно было найти при обнаружении изменения БД.
В рабочем процессе вы используете CallExternalMethodActivity для вызова этого метода сервисов. Затем вы переходите к HandleExternalEventActivity, который прослушивает событие. На этом этапе рабочий процесс будет простаивать и его можно будет сохранить. Он останется там до тех пор, пока служба не вызовет событие.