Error del compilador CS0118

Actualización: noviembre 2007

Mensaje de error

'nombre_construcción1 es 'construcción1' pero se utiliza como 'construcción2'
'construct1_name' is a 'construct1' but is used like a 'construct2'

El compilador detectó una situación en la que una construcción se utilizó de alguna forma errónea o se intentó realizar una operación no permitida en una construcción. Éstos son algunos ejemplos comunes:

  • Un intento de crear instancias de un espacio de nombres (en lugar de una clase)

  • Un intento de llamar a un campo (en lugar de a un método)

  • Un intento de utilizar un tipo como una variable

  • Un intento de utilizar un alias externo como un tipo.

Para resolver este error, asegúrese de que la operación que está realizando es válida para el tipo en el cual la está ejecutando.

Ejemplo

El código siguiente genera el error CS0118.

// CS0118.cs
// compile with: /target:library
namespace MyNamespace
{
   class MyClass
   {
      // MyNamespace not a class
      MyNamespace ix = new MyNamespace ();   // CS0118
   }
}