Erro do compilador CS0524

'type': interfaces não podem declarar tipos

Antes do C# 8.0, uma interface não podia conter tipos definidos pelo usuário. A partir do C# 8.0, as interfaces podem declarar tipos aninhados como parte do recurso de membros de interface padrão.

No C# moderno (C# 8.0 e posterior), esse erro não é mais gerado para tipos aninhados em interfaces. O compilador agora permite que as interfaces contenham classes aninhadas, structs, interfaces, enums e delegados.

Exemplo histórico

O exemplo a seguir gera CS0524 em versões do C# anteriores à 8.0, mas é válido em versões modernas do C#:

// This code is valid in C# 8.0 and later
public interface IExample  
{  
    public class NestedClass   // Valid since C# 8.0
    {  
    }  
}  

Consulte também