- CS0012:类型“type”定义在一个未被引用的程序集内。必须添加对程序集“assembly”的引用。
- CS0234:命名空间中不存在该类型或命名空间名称,是否缺少程序集引用?
- CS0246: 找不到类型或命名空间名称(缺少 using 指令或程序集引用吗?
- CS0400: 无法在全局命名空间中找到类型或命名空间名称(缺少程序集引用吗?)
- CS0735: 指定为属性参数 TypeForwardedToAttribute 的类型无效。
- CS1068: 无法在全局命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
- CS1069: 无法在命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
- CS1070: 找不到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
- CS1704: 已导入具有相同简单名称的程序集。尝试删除其中一个引用或对其进行签名以并行启用。
- CS1714: 无法解析或无效此类型的基类或接口。
- CS1760: 多个程序集引用相同的元数据,但只有一个是链接引用(使用 /link 选项指定);请考虑删除其中一个引用。
- CS7008: 程序集名称保留,不能在交互式会话中用作引用。
- CS7068:引用声称类型在此程序集内定义,但它未在源代码或任何添加的模块中定义。
- CS7069:引用声称某类型是在另一个程序集定义的,但无法找到该程序集。
- CS7071: 程序集引用无效,无法解析。
- CS7079: 类型在尚未添加的模块中定义。必须添加模块。
- CS8090: 引用的程序集中存在错误。
- CS8203: 程序集名称无效。
- CS9286: 类型不包含成员定义,未找到对象类型的可访问扩展成员(是否缺少 using 指令或程序集引用?)
此外,本文还介绍了以下警告:
- CS1683:引用类型“类型名称”声称已在此程序集中定义,但该类型在源代码或任何添加的模块中均未定义。
缺少引用
以下错误和警告表明您缺少程序集引用:
- CS0012: 类型“type”在未引用的程序集中定义。您需要添加对程序集“assembly”的引用。
- CS0234: 命名空间中不存在类型或命名空间名称(是否缺少程序集引用?)
- CS0246:找不到类型或命名空间名称(是否缺少 using 指令或程序集引用?)
- CS9286: 类型不包含定义,并且找不到接收方类型的可访问扩展成员(是否缺少 using 指令或程序集引用?)
这些编译器错误指示代码中存在以下问题之一:
- 项目不引用所需的程序集。 若要修复此错误, 请添加对所需程序集的引用。
- 你拼错了类型名称。 检查类型名称是否正确。
- 你在需要System.Type名称的地方使用了变量名称,比如在
typeof
运算符或者is
运算符中。 - 当类型不在全局命名空间中时,你使用了全局范围运算符 (
::
)。 - 你正在访问扩展成员,并且命名空间未在指令中
using
指定,或者未引用包含扩展的程序集。
类型转发
- CS1068: 无法在全局命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
- CS1069: 无法在命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
- CS1070: 找不到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
这些错误表示涉及引用被转发到不同程序集的类型的错误。 若要解决上述任何错误,请添加对错误消息中指示的程序集的引用。
重复引用
以下错误表示程序集引用重复:
- CS1704: 已导入具有相同简单名称的程序集。尝试删除其中一个引用或对其进行签名以并行启用。
- CS1760: 多个程序集引用相同的元数据,但只有一个是链接引用(使用 /link 选项指定);请考虑删除其中一个引用。
若要修复这些错误,必须删除其中一个引用,或解决重复。 重复的原因包括:
- 多个未签名的程序集具有相同的名称。
- 项目引用同一程序集的多个版本。
程序集引用无效
以下错误指示程序集引用无效:
- CS7008: 程序集名称保留,不能在交互式会话中用作引用。
- CS7069: 类型引用声称该类型已在另一个程序集中定义,但未能找到。
- CS7071: 程序集引用无效,无法解析。
- CS7079: 类型在尚未添加的模块中定义。必须添加模块。
- CS8090: 引用的程序集中存在错误。
- CS8203: 程序集名称无效。
以下警告还指示无效的引用程序集:
- CS1683:引用类型‘类型名称’声称在此程序集内定义,但在源代码或任何添加的模块中未定义
检查程序集名称拼写是否正确。 引用的程序集文件可能无效。