Не удалось отобразить конструктор для этого файла, поскольку ни один из классов в нем не может быть спроектирован.C#

Место общения программистов C#
Ответить
Anonymous
 Не удалось отобразить конструктор для этого файла, поскольку ни один из классов в нем не может быть спроектирован.

Сообщение Anonymous »


У нас есть следующий общий компонент:

публичный класс OurServiceBase: System.ServiceProcess.ServiceBase Этот класс имеет функциональные возможности, которые нам нужны во всех наших последующих службах, например стандартизированное планирование выполнения и функции ведения журналов.

В новый проект я добавляю следующее:

публичный класс MyService: System.ServiceProcess.ServiceBase В конструкторе Windows класс отображается правильно.

Когда я меняю сервис на производный от OurServiceBase

публичный класс MyService: OurSharedLibrary.OurServiceBase Конструктор перестает работать:


Изображение


Полная ошибка: Не удалось отобразить конструктор для этого файла, поскольку ни один из классов в нем не может быть спроектирован. Разработчик проверил следующие классы в файле: EmailProcessor --- Не удалось загрузить базовый класс OurSharedLibrary.CienaServiceBase. Убедитесь, что на сборку есть ссылка и что все проекты построены.

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

Любые предложения будут приветствоваться.

Дополнительная информация — стек вызовов дизайнера, когда он отображает ошибку о невозможности спроектировать производный сервис:

at System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.EnsureDocument (менеджер IDesignerSerializationManager) в System.ComponentModel.Design.Serialization.CodeDomDesignerLoader.PerformLoad (менеджер IDesignerSerializationManager) в Microsoft.VisualStudio.Design.Serialization.CodeDom.VSCodeDomDesignerLoader.PerformLoad (IDesignerSerializationManager SerializationManager) в System.ComponentModel.Design.Serialization.BasicDesignerLoader.BeginLoad (хост IDesignerLoaderHost) 19.07.2011, 14:34 по восточному времени Новое открытие.

Класс OurServiceBase существует в отдельном проекте (обычно упоминается только как DLL). По прихоти я скопировал файл базового класса в свой проект, собрал и открыл дизайнер. Это сработало! Когда я снова удалил файл базового класса и вернулся к внешней ссылке на DLL, дизайнер снова сломался.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»