【问题标题】:"The type or namespace cannot be found (are you missing a using directive or an assembly reference?)"“找不到类型或命名空间(您是否缺少 using 指令或程序集引用?)”
【发布时间】:2013-08-19 06:42:30
【问题描述】:

错误 1 ​​找不到类型或命名空间名称“EmpInfo”(您是否缺少 using 指令或程序集引用?) C:\Users\Station\Desktop\Test\Test\BusinessLayer\EmpOperation.cs 13 33业务层

错误 2 找不到类型或命名空间名称“EmpOperation”(您是否缺少 using 指令或程序集引用?) C:\Users\Station\Desktop\Test\Test\Test\EmpEntry.aspx.cs 15 8 测试

但是 'EmpInfo' 和 'EmpOperation' 类都在那里......那为什么它仍然显示这种类型的错误???

还有。

public int ACSaveEmpInfo(EmpInfo paramEmpInfo)

当我单击 EmpInfo 并单击 Go To Definition 时,在上面的行中显示“无法导航到 EmpInfo”。

【问题讨论】:

  • 如果您的类位于不同的 C# 项目中,则通过单击“引用”将项目的引用添加到当前项目中,并将项目添加为引用。添加后,您可以使用 using 或全名来访问该类
  • 'EmpInfo' 类在 Models 项目下,'EmpInfo' 类在 BusinessLayer 项目下……现在该怎么办?
  • 简单的步骤将两个项目的 dll 复制到您当前的项目 bin 文件夹中,或者如果您在当前项目下使用 Visual Studio,请右键单击参考并将机器人添加为项目作为参考。更多信息:msdn.microsoft.com/en-us/library/f3st0d45(v=vs.100).aspx

标签: asp.net


【解决方案1】:

这些类可能位于不同的包中。尝试使用类顶部的“using _namespace_name”语句来包含这些命名空间。或者,您也可以使用它们的完整命名空间标识符来调用这些类。

例如

    some_namespace.Classname = new some_namespace.classname() 

【讨论】:

  • bw 你用的是哪个IDE?
  • 假设您使用的是 Visual Studios。首先,所有这些类必须在同一个项目中。如果没有,您需要添加对其他项目的引用。其次,如果它们在同一个项目中,则需要“使用语句”来使用其他命名空间中的类。我在回答中写的是一个命名空间名称(您可以将它们视为 java 中的包),然后是您尝试使用的类名称。
【解决方案2】:

我认为您正在尝试调试与您现在使用的源不同的代码。如果您错过了添加引用并重建应用程序,问题可能会解决,我认为您可能会错过任何其他 dll 来支持您的项目检查。

或者

在 .cs 页面中添加正确的漏掉 EmpOperation 命名空间并检查一次

【讨论】:

    猜你喜欢
    • 2011-02-12
    • 1970-01-01
    • 2013-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-01
    • 2020-11-28
    • 2015-06-12
    相关资源
    最近更新 更多