Error del compilador CS0266

Actualización: noviembre 2007

Mensaje de error

No se puede convertir implícitamente el tipo 'tipo' en 'tipo' Ya existe una conversión explícita (compruebe si le falta una conversión)
Cannot implicitly convert type 'type1' to 'type2'. An explicit conversion exists (are you missing a cast?)

Este error se produce cuando existe código que intenta convertir dos tipos que no se pueden convertir implícitamente, como una asignación de un tipo base a un tipo derivado al que le falta una conversión explícita. Para obtener más información, vea Operadores de conversión (Guía de programación de C#).

El código siguiente genera el error CS0266:

// CS0266.cs
class MyClass
{
    public static void Main()
    {
        object obj = "MyString";
        // Cannot implicitly convert 'object' to 'MyClass'
        MyClass myClass = obj;  // CS0266
        // Try this line instead
        // MyClass c = ( MyClass )obj;
    }
}