В моей программе я использую перечисления для представления текущего состояния объекта.Я хотел бы иметь возможность циклически перебирать значения этого перечисления по одному.Тот факт, что значения перечисления являются числовыми последовательными и начинаются с 0, является данным.
При попытке написать функцию, которая увеличивает перечисление, цикл, если он достиг конца, привел к проблеме.1004 *
Если метод IncrWrap
существует в той же сборке (проекте), что и объект, который его вызывает, он работает отлично.Однако, если я перенесу его в другой проект (выше, чтобы его могли использовать другие люди) и вызову его из библиотеки DLL, я получу RuntimeBinderException
, когда он попытается привести wrapper
к int
ссообщение "Невозможно преобразовать тип 'System.Enum' в 'int'".
Что происходит?Я не понимаю, почему вызов функции из другой сборки может привести к тому, что она будет вести себя по-другому.Что-то в dynamic
я не понимаю?Было бы неплохо не использовать рефлексию для этого.