我有一个XAML工作流,它使用存储在多个dll中的自定义活动。我正在尝试使用WorkflowApplication执行此工作流程。但是,在加载XAML时,我无法弄清楚如何解析多个引用程序集。我知道XamlXmlReaderSettings提供了LocalAssembly属性,它允许我们提供引用程序集。但是,它只允许提供单个组件。如何为阅读器提供多个参考组件,以便它能够解析外部类型?任何帮助将不胜感激。我已经粘贴了我正在使用的代码供参考。
public void LoadWorkflowFromFileAsync(string workflowXaml, Assembly activityAssembly)
{
var xamlReaderSettings = new XamlXmlReaderSettings
{
LocalAssembly = activityAssembly
};
var xamlSettings = new ActivityXamlServicesSettings
{
CompileExpressions = true
};
using (var reader = new XamlXmlReader(workflowXaml, xamlReaderSettings))
{
_activity= ActivityXamlServices.Load(reader, xamlSettings);
}
}
答案 0 :(得分:1)
XAML中的xmlns
是否包含程序集名称(例如xmlns:ede="clr-namespace:Sample.MyActivityLibrary;assembly=Sample.MyActivityLibrary"
)?
我不知道在XamlXmlReaderSettings中引用多个本地程序集但是如果在XAML中引用了程序集,它应该自动解析。