2013-03-19 83 views
1

我在asp命名空间中使用了一些语句,它在构建时喜欢ASP.controls1 ,它很好,并且运行良好。 但是当我发布,即一个错误:asp.net无法发布asp命名空间?

错误120个C:\项目\ TideWeb \控制\共同\ ExceptionHelper \ ExceptionHelper.ascx.cs(53):错误CS0234:类型或命名空间名称 'controls_common_errorlist_errorlist_ascx'在命名空间“ASP”中不存在(您是否缺少程序集引用?)

+1

你可以发布您的代码? – RandomUs1r 2013-04-24 22:41:33

+0

UserControl的声明在哪里?是在相同的标记代码中,还是在配置文件中? (我的意思是<%@ Register%> – 2013-04-25 00:01:56

+0

这个问题是如何解决的?我在发布时遇到同样的问题。 – EthenHY 2013-11-05 03:19:19

回答

2

没有示例代码,我尝试通过列出我在ASP命名空间中找到的所有错误来帮助您。

1)用户控件'ExceptionHelper.ascx.cs'在当前页面/用户控件中不使用。 您可以尝试一下:只有在当前页面(或UserControl)中提到一个或多个UserControl时,ASP名称空间才会出现在intellisense中。如果您提到的UserControl代码包含编译错误,则intellisense(和编译器)将忽略其名称。 修复编译错误,并返回控件的名称。

2)UserControl注册到web.config文件中,并用于同一目录中的页面(或UserControl)。在这种情况下,您必须通过此标签在当前页面重新注册您的UserControl:

<%@ Register Src="~/MyControls/MyControl.ascx" TagPrefix="MyControls" TagName="MyControl" %> 

添加此标签,并且错误已修复。

3)你提到:

"but when i publish, that is one error"

在某些情况下,我的WebApp将无法正确在目标服务器上编译,但在测试一切运作良好。

该编译错误可能是配置错误,Temporary ASP.NET Directory的权限以及Application Pool使用的身份。

如果你可以发布一些代码,我可以帮助你更好。

+0

你可以在这里发布你的解决方案吗?对其他用户更有用!谢谢;) – 2013-04-30 00:39:02

1

你说的是好的,但不够。我遇到了同样的问题并解决了问题,但删除了ASP。一部分,所以例如在更改此代码

ASP.ascx_buscador buscador = new ASP.ascx_buscador(); 

为这一个 ASCX_buscador =新ASCX_buscador();

现在一切都很好。需要注意的是,在新代码ASCX_现在资本(智能感知将帮助你)

发现这里的解决方案: Getting namespace name not found for ASP.net user control