Não é possível implementar a interface '<interfacename1>' porque sua implementação poderia entrar em conflito com a implementação de outra interface implementada '<interfacename2>' em alguns argumentos de tipo

Uma declaração de classe inclui uma instrução Implements que especifica duas ou mais interfaces, mas pelo menos uma das interfaces é genérica e duas das implementações podem entrar em conflito com determinados valores de argumentos de tipo.

As instruções a seguir podem gerar esse erro.

Public Interface iFace1
    Sub testSub(ByVal arg As String)
End Interface
Public Interface iFace2(Of t)
    Sub testSub(ByVal arg As t)
End Interface
Public Class testClass
    Implements iFace1, iFace2(Of String)
End Class

Como iFace2 é construído com o uso de String, testClass deve implementar duas versões de testSub com assinaturas idênticas. Isso produziria ambiguidade sobre qual versão acessar.

ID do Erro: BC32072

Para corrigir este erro

  • Altere o argumento de tipo fornecido para a interface genérica, para que não haja conflito.

    -ou-

  • Remova da instrução Implements uma das interfaces que resultam no conflito de implementação.

Confira também