Ошибка компилятора CS0011
Обновлен: Ноябрь 2007
Сообщение об ошибке
Базовый класс или интерфейс "класс" в сборке "сборка", на которую ссылается тип "тип", не удается разрешить
The base class or interface 'class' in assembly 'assembly' referenced by type 'type' could not be resolved
Не удается найти интерфейс, который реализуется классом, импортированным из файла с помощью параметра /reference, или класс, являющийся базовым для этого класса. Эта ошибка также может возникать, если в компиляцию с помощью параметра /reference не включена требуемая библиотека DLL.
Дополнительные сведения см. в разделах Диалоговое окно "Добавление ссылки" и /reference (импорт метаданных) (параметры компилятора C#).
Пример
// CS0011_1.cs
// compile with: /target:library
public class Outer
{
public class B { }
}
Второй файл создает библиотеку DLL, которая определяет класс C, производный от класса B, созданного в предыдущем примере.
// CS0011_2.cs
// compile with: /target:library /reference:CS0011_1.dll
// post-build command: del /f CS0011_1.dll
public class C : Outer.B {}
Третий файл заменяет библиотеку DLL, созданную на первом этапе, и пропускает определение внутреннего класса B.
// CS0011_3.cs
// compile with: /target:library /out:cs0011_1.dll
public class Outer {}
И наконец, четвертый файл ссылается на класс C, определенный во втором примере, который является производным от отсутствующего теперь класса B.
В следующем примере создается ошибка CS0011.
// CS0011_4.cs
// compile with: /reference:CS0011_1.dll /reference:CS0011_2.dll
// CS0011 expected
class M
{
public static void Main()
{
C c = new C();
}
}