Хорошо, это вопрос, который я задаю, не так, как в демонстрации хороших методов кодирования (это на самом деле можно считать плохой практикой), а скорее в отношении "может" это вообще делается.
Тем не менее, в VB.NET вы реализуете такой интерфейс...
Sub SomeInterfaceMember()
Implements ISomeInterface.SomeInterfaceMember
End Sub
в то время как в С# вы явно это делаете (который может быть вызван только через интерфейс)...
void ISomeInterface.SomeInterfaceMember(){}
или более просто, неявно подобным образом (в этом случае вы можете вызвать его напрямую или через интерфейс)...
void SomeInterfaceMember(){} // <-- This name matches the interface member
Однако, что касается VB, вы также можете сделать это, используя любое имя, которое вы хотите для члена...
Sub SomeRandomMemberName() // <-- This name doesn't match the interface member
Implements ISomeInterface.SomeInterfaceMember
End Sub
Другими словами, метод, который обрабатывает реализацию, может иметь совершенно другое имя, чем имя члена интерфейса.
Мне просто интересно, есть ли что-то подобное в С#. (Да, я знаю, что могу просто сделать явный интерфейс, а затем получить доступ к нему через другого члена "обертки" с другим именем, которое просто делегирует ему, но в VB.NET вы делаете оба с помощью одного метода.)
Так что это можно сделать?
Марк