C#asp.net-类型或命名空间名称';助手';找不到(是否缺少using指令或程序集引用?)
我正在重新编写其他人的代码,在那里他们有一个助手类,其中包含许多不应该存在的代码(数据访问、业务逻辑,所有东西都被慢慢地推到了那里) 我已经将相关代码移动到适当的预先存在的类中,并在适当的项目中创建了一个单独的、全新的helper类,但是我对这个类的所有引用都不起作用 下面是我的类外观的简单视图(名称略有更改) 这里是它是如何被引用的C#asp.net-类型或命名空间名称';助手';找不到(是否缺少using指令或程序集引用?),c#,reference,app-code,C#,Reference,App Code,我正在重新编写其他人的代码,在那里他们有一个助手类,其中包含许多不应该存在的代码(数据访问、业务逻辑,所有东西都被慢慢地推到了那里) 我已经将相关代码移动到适当的预先存在的类中,并在适当的项目中创建了一个单独的、全新的helper类,但是我对这个类的所有引用都不起作用 下面是我的类外观的简单视图(名称略有更改) 这里是它是如何被引用的 using Company.Web.Application.Reporting; namespace Company.Web.Application.App.R
using Company.Web.Application.Reporting;
namespace Company.Web.Application.App.Reports
{
public partial class PlansReports : PageBase
{
//This is the problem part
private ReportHelper Helper = new ReportHelper();
heaps of other code with no problems here...
}
}
我的问题是,无论我在哪里尝试访问我的新助手,我都会遇到以下错误
类型或命名空间名称
找不到“ReportHelper”(是
您缺少using指令或
装配参考?)
我所有的using语句都在那里,我在每个相关的项目中都有适当的引用,但是这种情况仍然存在。
在这一点上,我完全被卡住了,我只需要解决这个引用问题,这样我就可以确保我的所有助手方法都正常工作
非常感谢您的帮助
帕特。您的
ReportHelper
是否在单独的项目或DLL中?如果是,您是否已添加此项目/dll作为参考?(在您的解决方案资源管理器中的“参考”下,检查您的项目/dll是否存在。您是否构建了Company.Web.Application.Reporting
,以便了解类型?这是我的想法,同时确保正确设置了依赖项。听起来您知道自己在做什么,而且一切看起来都正常,因此它是正确的。)简单地说,您是否正在尝试访问ReportHelper中尚未编译到dll中的更改?我将尝试重建引用程序集;每次对该程序集进行更改时,都需要重建该程序集
还要验证您是否正在向项目中添加正确的程序集(例如,调试与发布)。哪种类型无关紧要,但您不希望将新更改编译到调试dll中,并继续添加旧版本的发布dll。好的,我发现了问题(实际上是同事发现的)
这个原始的Helper类包含在我的主项目的app_code文件夹中,正如我刚刚了解到的,它处理编译的方式与项目中的所有其他文件夹不同。
这里的代码是在运行时编译的,而不是在构建期间编译的。
当我创建新类时,它们位于app_code文件夹中,因为我使用code rush将类提取到一个新文件中,该文件将类保存在同一位置……之后,我将它们移动到“合理”位置。
不幸的是,他们仍然拥有从他们之前存在于app_代码文件夹中继承的“Content”构建操作。
因此,在新的类文件中,我简单地将其构建操作更改为“编译”,现在一切正常
干杯
Pat.可能已经完成,但请确保更新引用。是的,ReportHelper位于一个单独的项目/DLL中。我已在主项目中添加了对另一个项目的引用&DLL(尝试引用一个、另一个和两个!)但是我还是不走运。另外,我看到了你之前的回复,你问引用的项目是否已生成。是的,它将为我生成,但由于某些原因,我仍然无法使用我的新类。你应该接受你的回答是正确的,因此它不会显示为未回答。
using Company.Web.Application.Reporting;
namespace Company.Web.Application.App.Reports
{
public partial class PlansReports : PageBase
{
//This is the problem part
private ReportHelper Helper = new ReportHelper();
heaps of other code with no problems here...
}
}