CodeTypeDeclaration.BaseTypes Property
Gets the base types of the type.
Namespace: System.CodeDom
Assembly: System (in System.dll)
Property Value
Type: System.CodeDom.CodeTypeReferenceCollectionA CodeTypeReferenceCollection object that indicates the base types of the type.
To generate a class in Visual Basic that does not inherit from a base type, but that does implement one or more interfaces, you must include Object as the first item in the BaseTypes collection.
Note |
|---|
In the .NET Framework version 2.0 you do not need the CodeTypeReference for Object if the interface you are implementing already exists and you are referring to it by type. For example, if you are implementing the ICollection interface and add it to the collection with this statement, ctd.BaseTypes.Add(New CodeTypeReference(typeof(ICollection))), you do not need the preceding ctd.BaseTypes.Add(New CodeTypeReference(GetType(Object))) statement. |
The following code illustrates the addition of a CodeTypeReference to the collection that refers to Object.
[Visual Basic]
Dim ctd As New CodeTypeDeclaration("Class1")
ctd.IsClass = True
ctd.BaseTypes.Add(New CodeTypeReference(GetType(Object)))
ctd.BaseTypes.Add(New CodeTypeReference("Interface1"))
[C#]
CodeTypeDeclaration ctd = new CodeTypeDeclaration("Class1");
ctd.IsClass = true;
ctd.BaseTypes.Add(new CodeTypeReference(typeof(Object)));
ctd.BaseTypes.Add(new CodeTypeReference("Interface1"));
The preceding code generates the equivalent of the following Visual Basic code.
Public Class Class1 Implements Interface1
However, the Visual Basic code actually generated is the following.
Public Class Class1 Inherits Object Implements Interface1
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note