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