У меня есть некоторый исходный код на c #, который я хочу скомпилировать с использованием CodeDom в моем приложении (для плагина)
Все работает нормально, за исключением случаев, когда я использую функцию расширения Linq в некоторых моих коллекциях
var dict = new Dictionary<KeyType, ValueType>();
....
dict.Any(KV=>KV.Key == "Some Key");
Когда я пытаюсь скомпилировать исходный код с этим кодом, CodeDom жалуется, что мне не хватает ссылки на DependencyObject в WindowsBase.
Я не понимаю, почему это происходит. Ни класс Dictionary, ни метод расширения Any не ссылаются на этот класс, который, очевидно, является частью Windows. Forms
Обычно я просто игнорирую причуду, заставляю CodeDom добавлять ссылку и двигаться дальше, но, видимо, WindowsBase особенная и не всегда распространяется, и я не хочу вызывать проблемы для пользователей, которые могут неправильно установить ее.