По каким причинам Moles не генерирует делегатов для некоторых функций? - PullRequest
1 голос
/ 05 декабря 2011

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

Вместо того, чтобы показывать точный метод (хотя я буду обозначать, что этопрокси-метод веб-службы, с множеством атрибутов, добавляющих свои параметры) Вместо этого я задам вышеупомянутый вопрос из заголовка:

По каким причинам Moles не генерирует делегатов для некоторых методов ??

Единственное, что я заметил в руководстве, которое едва ли имеет какое-либо отношение к этой проблеме, - это упоминание о том, что частные методы не генерируют своих уважаемых делегатов, если их параметры не видны сгенерированной сборке.В связи с тем, что моя проблема заключается в методе общедоступного прокси-веб-сервиса, должно быть больше причин, по которым делегаты не генерируются.

Заранее спасибо за вашу помощь!

1 Ответ

1 голос
/ 07 декабря 2011

Moles не генерирует делегатов для всех методов.Кроме того, Справочное руководство по родинкам Microsoft , страницы 4 и 5 содержит упрощенный обзор типов родинок, связанных с различными механизмами обхода.Например, вы можете использовать тип моль, когда вы должны использовать заглушку.На странице 14 приведены некоторые ограничения типов родинок:

  • Платформа Moles поддерживает только ограниченное количество сигнатур метода - до 10 аргументов, где последний аргумент может быть аргументом out или ref.Сигнатуры методов с указателями не поддерживаются.
  • Запечатанные классы или статические методы не могут быть заглушены, потому что типы заглушек зависят от диспетчеризации виртуальных методов.Для таких случаев используйте типы родинок, как описано в разделе «Типы родинок» далее в этом документе.

Если чтение Справочного руководства по родинкам Microsoft не дает ответов на вашу проблему, опубликуйте упрощенный примерметод, который не генерирует обходные пути.

...