NonComVisibleBaseClass был обнаружен; Как это исправить? - PullRequest
5 голосов
/ 26 июня 2009

Мой класс является производным от System.Web.Security.MembershipUser Я получаю эту ошибку при отправке формы. Всплывающая форма использует ASPPDF, и у приложения не было этой проблемы до реализации пользовательских вкусностей MembershipProvider. Обратите внимание, что это только ошибка отладки. Кажется, работает, когда я не отлаживаю. Кто-нибудь знает, как я могу это исправить?

Обнаружен NonComVisibleBaseClass Сообщение: был выполнен вызов QueryInterface с запросом интерфейса IDispatch по умолчанию для видимого COM управляемого класса 'XyAmpUser'. Однако, поскольку этот класс не имеет явного интерфейса по умолчанию и является производным от невидимого COM-класса System.Web.Security.MembershipUser, вызов QueryInterface завершится ошибкой. Это сделано для того, чтобы не ограничивать видимый базовый класс COM правилами COM-версий.

Спасибо, ~ ck в Сан-Диего

Ответы [ 2 ]

2 голосов
/ 29 июня 2010

Я недавно обнаружил эту ошибку в совершенно не связанном с вами сценарии.

  1. Перейдите к Отладка-> Исключения ...
  2. Развернуть "Помощники по управляемой отладке"
  3. Снимите флажок с параметра Брошенный NonComVisibleBaseClass.
  4. Нажмите [Ok]

Вот дополнительная информация, которая может помочь.

0 голосов
/ 30 июля 2013

это говорит вам о том, что: Ваш проект содержит некоторые объекты на основе COM, которые не подписаны ключом для публичного использования.

В этом случае есть 2 решения: 1 - Снимите флажок с NonVisibleCome в настройках отладчика. 2- Найдите код объекта, подпишите его и перестройте.

...