类“<classname>”必须声明一个“Sub New”,因为其基类“<baseclassname>”中的“<constructorname>”被标记为已过时

类声明不包括构造函数,并且基类构造函数标记有 ObsoleteAttribute 特性和一个将其视为一个错误的指令。

当派生的类没有声明构造函数时,Visual Basic 尝试生成一个调用 MyBase.New() 的隐式无参数构造函数。 如果基类中没有无需参数即可调用的可访问的构造函数,则 Visual Basic 无法生成隐式构造函数。 在这种情况下,所需的构造函数标记有 ObsoleteAttribute 特性,因此 Visual Basic 不能调用它。

可以通过将 ObsoleteAttribute 应用于任意编程元素,将其标记为不再使用。 如果执行此操作,则可以将特性的 IsError 属性设置为 TrueFalse。 如果设置为 True,则编译器将尝试使用该元素的操作视为错误。 如果设置为 False,或将其默认为 False,则编译器会在有操作尝试使用该元素时发出警告。

错误 ID: BC30917

更正此错误

  • 使用 Sub New 在派生类中声明一个构造函数。