0

我有一些我想在我的应用程序中使用 CodeDom 编译的 c# 源代码(用于插件)

一切正常,除非我在我的一些收藏中使用 Linq 扩展功能

var dict = new Dictionary<KeyType, ValueType>();
....
dict.Any(KV=>KV.Key == "Some Key");

当我尝试编译具有此代码的源代码时,CodeDom 抱怨我缺少对 WindowsBase 中 DependencyObject 的引用。

我不明白为什么会这样。Dictionary 类或 Any 扩展方法均未引用该类,该类显然是 Windows.Forms 的一部分

我通常会忽略这个怪癖,让 CodeDom 添加一个引用并继续前进,但显然 WindowsBase 是特殊的,并不总是分发的,我不想给可能没有正确安装它的用户造成问题。

4

1 回答 1

1

我通过在我的应用程序中添加对 WindowsBase 的引用并将其设置为始终复制解决了当前的问题。然后我能够正确地在 codeDom 中添加引用。

我仍然对为什么需要 DLL 感到困惑,但我已经解决了它。

于 2010-06-14T18:40:21.733 回答