类型约束“<expression>”不是类或接口

更新:2007 年 11 月

约束列表包括了无法对类型形参进行有效约束的表达式。

约束列表对传递给类型形参的类型实参有一定要求。可以按任意组合指定下列要求:

  • 类型实参必须实现一个或多个接口

  • 类型实参必须从最多一个类中继承

  • 类型实参必须公开创建代码可访问的无形参构造函数

  • 类型实参必须为引用类型,或者必须为值类型

**错误 ID:**BC32048

更正此错误

  • 验证表达式及其元素的拼写是否正确无误。

  • 如果表达式不符合前面列出的几点要求,请将其从约束列表中移除。

  • 如果表达式引用某个接口或类,请验证编译器是否有权访问该接口或类。您可能需要限定其名称,并且,可能需要添加对项目的引用。有关更多信息,请参见 有多个同名变量时解析引用 中的“项目引用”。

请参见

任务

如何:限定已声明的元素名

如何:在 Visual Studio 中添加和移除引用 (C#)

概念

Visual Basic 中的泛型类型

值类型和引用类型