Хорошо, я, наверное, что-то здесь не так понял, но, насколько я понимаю ...
- Метод расширения должен содержаться в модуле, а не в классе
- Вы не можете создавать методы в модулях Static / Shared
- Следовательно, вы не можете использовать метод расширения в классе, не создав его экземпляр.
Другими словами, вы не можете создать метод расширения для String с именем «MyExtensionMethod» и использовать:
String.MyExtensionMethod("String")
Но вместо этого ..
Dim test As String
test.MyExtensionMethod("string")
Это правильно? Или я могу заставить методы расширения работать как статические методы?