解决与程序集引用相关的错误和警告

  • CS0012: 在未被引用的程序集中定义了类型“type”。必须添加对程序集“assembly”的引用。
  • CS0234: 命名空间中不存在类型或命名空间名(是否缺少程序集引用?)
  • CS0246: 未能找到类型或命名空间名(是否缺少 using 指令或程序集引用?)
  • CS0400: 未能在全局命名空间中找到类型或命名空间名(是否缺少程序集引用?)
  • CS0735: 指定为 TypeForwardedToAttribute 属性的参数的类型无效。
  • CS1068: 无法在全局命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
  • CS1069: 无法在命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
  • CS1070: 未能找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
  • CS1704: 已导入具有相同的简单名称的程序集。尝试删除某个引用,或为其签名,以启用并行。
  • CS1714: 此类型的基类或接口未能解析或无效。
  • CS1760: 多个程序集引用相同的元数据,但只有一个是链接引用(使用 /link 选项指定);请考虑移除其中一个引用。
  • CS7008: 程序集名保留名称,不能在交互会话中用作引用。
  • CS7068: 对类型的引用声明在此程序集中定义了该类型,但源代码或任何添加的模块中并未定义该类型。
  • CS7069: 对类型的引用声明在另一个程序集中定义了该类型,但找不到它。
  • CS7071: 程序集引用无效且无法解析。
  • CS7079: 类型在尚未添加的模块中定义。必须添加该模块。
  • CS8090: 引用的程序集中有错误。
  • CS8203: 程序集名称无效。

此外,本文还介绍了以下警告:

  • CS1683: 对类型“Type Name”的引用声明在此程序集中定义了该类型,但在源代码或任何添加的模块中并未定义该类型。

缺少引用

以下错误和警告指示缺少程序集引用:

  • CS0012: 在未被引用的程序集中定义了类型“type”。必须添加对程序集“assembly”的引用。
  • CS0234: 命名空间中不存在类型或命名空间名(是否缺少程序集引用?)
  • CS0246: 未能找到类型或命名空间名(是否缺少 using 指令或程序集引用?)

这些编译器错误指示代码中存在以下问题之一:

类型转发

  • CS1068: 无法在全局命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
  • CS1069: 无法在命名空间中找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。
  • CS1070: 未能找到类型名称。此类型已转发到另一个程序集。请考虑添加对该程序集的引用。

这些错误表示引用转发到不同程序集的类型时出错。 若要解决上述任何错误,请添加对错误消息中指示的程序集的引用。

重复引用

以下错误指示重复的程序集引用:

  • CS1704: 已导入具有相同的简单名称的程序集。尝试删除某个引用,或为其签名,以启用并行。
  • CS1760: 多个程序集引用相同的元数据,但只有一个是链接引用(使用 /link 选项指定);请考虑移除其中一个引用。

若要修复这些错误,必须移除其中一个引用,或解决重复问题。 导致重复的原因包括:

  • 多个未签名的程序集具有相同的名称。
  • 项目引用同一程序集的多个版本。

程序集引用无效

以下错误指示程序集引用无效:

  • CS7008: 程序集名保留名称,不能在交互会话中用作引用。
  • CS7069: 对类型的引用声明在另一个程序集中定义了该类型,但找不到它。
  • CS7071: 程序集引用无效且无法解析。
  • CS7079: 类型在尚未添加的模块中定义。必须添加该模块。
  • CS8090: 引用的程序集中有错误。
  • CS8203: 程序集名称无效。

以下警告还指示无效的引用程序集:

  • CS1683: 对类型“Type Name”的引用声明在此程序集中定义了该类型,但在源代码或任何添加的模块中并未定义该类型

检查程序集名称拼写是否正确。 引用的程序集文件可能无效。