Ошибка компилятора CS0266

Обновлен: Ноябрь 2007

Сообщение об ошибке

Невозможно неявным образом преобразовать тип "тип1" в "тип2". Существует явное преобразование (отсутствует приведение?)
Cannot implicitly convert type 'type1' to 'type2'. An explicit conversion exists (are you missing a cast?)

Эта ошибка возникает, если имеется код, пытающийся преобразовать два типа, которые не могут быть преобразованы неявным образом, например при назначении базового типа производному типу и отсутствии явного приведения. Дополнительные сведения см. в разделе Операторы преобразования (Руководство по программированию в C#).

Следующий пример приводит к возникновению ошибки 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;
    }
}