Как сохранить XAML для рабочего процесса WF4 в перепроектированном конструкторе, без записи его в файл? Я хочу сохранить сериализованный рабочий процесс в базе данных в виде строки XML.
С учетом экземпляра WorkflowDesigner с именем w, это прекрасно сохраняется в файл:
WorkflowDesigner.Flush();
w.Save("filename.xaml");
Я надеялся, что это будет сериализовано в строку - но это не удастся:
WorkflowDesigner.Flush();
var modelService = WorkflowDesigner.Context.Services.GetService<ModelService>();
var workflow = modelService.Root;
var xml = XamlServices.Save(workflow);
... при сохранении одного действия Sequence говорится, что «Type 'System.Activities.Presentation.Model.ModelItemImpl' не отображается. Если тип локальный, установите поле LocalAssembly в XamlReaderSettings.