Ошибка компиляции при сборке Monoflector - PullRequest
1 голос
/ 04 февраля 2011

Я пытался создать Monoflector в Visual C # Express, но проект Monoflector.Data не может быть собран с ошибками компилятора:

ошибка CS1061: «System.Collections.Specialized.NotifyCollectionChangedEventHandler» не содержит определения для «Dispatch», а метод расширения «Dispatch», не принимающий первый аргумент типа «System.Collections.Specialized.NotifyCollectionChangedEventHandler», может быть найден ( вам не хватает директивы using или ссылки на сборку?)

ошибка CS1061: «System.ComponentModel.PropertyChangedEventHandler» не содержит определения для «Dispatch», и отсутствует метод расширения «Dispatch», принимающий первый аргумент типа «System.ComponentModel.PropertyChangedEventHandler» (вы пропускаете используя директиву или ссылку на сборку?)

Первая ошибка произошла в одном файле (ModelCollection.cs), а вторая - в двух файлах (ModelCollection.cs и ModelObject.cs).

Моей первой мыслью было, что она каким-то образом вытаскивает старую версию Сесила, которая была у меня на этом компьютере, но мой старый код Сесила находится в подкаталоге, который не указан ни в одном пути поиска. Я расширил ссылки в Solution Explorer, и ни на одной из них не было значков с предупреждением.

Кто-нибудь еще может скомпилировать Monoflector? Если да, какова ваша конфигурация, и нужно ли было вносить какие-либо изменения для ее компиляции?

1 Ответ

0 голосов
/ 04 февраля 2011

Я нашел метод расширения, который искал.Он определен в GlobalDispatcher.cs в проекте Monoflector.Data, но он находится внутри блока #if WPF.

Чтобы собрать его, все, что мне нужно было сделать, - это щелкнуть правой кнопкой мыши проект Monoflector.Data,щелкните «Свойства», перейдите на вкладку «Сборка» и установите для «Условных символов компиляции» значение «WPF».

В проекте определен символ «WPF», но только в конфигурации «Отладка»;похоже, что полная Visual Studio получила бы эту же ошибку компилятора в сборке "Release".VC # Express всегда компилируется для «Release».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...