Rehosted Workflow Designer在加载时抛出TypeLoadException

时间:2015-04-20 18:21:20

标签: c# wpf typeloadexception workflow-foundation-4.5

我正在尝试在我的WPF应用中重新托管工作流设计器。

然而,当我尝试初始化它时,我得到一个TypeLoadException对话框,其中包含以下消息:

  

“无法加载类型   'Reporting.Primitives.Documents.IDocField`1'来自   程序集'Reporting.Primitives,Version = 1.0.0.0,   Culture = neutral,PublicKeyToken = null'。“

我已经尝试将其剥离并在此处获得了简单的调用代码:

var wnd = new Window();
var grid = new Grid();
wnd.Content = grid;

var met = new DesignerMetadata();
met.Register();

var d = new WorkflowDesigner();
d.Load(new Sequence());
grid.Children.Add(d.View);
wnd.Show();

Load的调用会导致异常。

以下是奇怪的部分:名为IDocField<T>的解决方案中有类型。

有一个IDocField和一个DocField<T> : IDocField,所以它似乎是从某个地方发明了这个IDocField<T>类型。

我也没有任何反映调用寻找IDocField<T>

我也尝试将应用程序中的代码移动到不直接引用Reporting.Primitives的各种模块中,但无济于事。

有一个IUiDocField<T>界面浮动。

奇怪的是,我前段时间确实编写了一个接口IDocField<T>,但现在不在解决方案中,所以我不明白为什么它会导致问题。

1 个答案:

答案 0 :(得分:0)

照例It's always your (my) fault.

应用程序通过使用反射的目录拉入插件,并且看起来那里有一个引用IDocField<T>界面的旧dll。

在工作流设计人员试图探测程序集中的类型信息之前,这似乎不是问题,最终发现某些东西引用了那些不存在的东西!

<强>捂脸