Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
'type': las interfaces no pueden declarar tipos
Antes de C# 8.0, una interfaz no podía contener tipos definidos por el usuario. A partir de C# 8.0, las interfaces pueden declarar tipos anidados como parte de la característica de miembros de interfaz predeterminada.
En C# moderno (C# 8.0 y versiones posteriores), este error ya no se genera para los tipos anidados en las interfaces. El compilador ahora permite que las interfaces contengan clases anidadas, estructuras, interfaces, enumeraciones y delegados.
Ejemplo histórico
El ejemplo siguiente genera la advertencia CS0524 en versiones de C# anteriores a la 8.0, pero es válida en versiones modernas de C#:
// This code is valid in C# 8.0 and later
public interface IExample
{
public class NestedClass // Valid since C# 8.0
{
}
}