我使用asp命名空间的一些语句,它喜欢ASP.controls1 在构建时,它很好,并且运行良好。 但是当我发布时,这是一个错误:
错误120 c:\ Projects \ TideWeb \ Controls \ Common \ ExceptionHelper \ ExceptionHelper.ascx.cs(53):错误CS0234:命名空间“ASP”中不存在类型或命名空间名称“controls_common_errorlist_errorlist_ascx”(是你吗?缺少装配参考?)
答案 0 :(得分:2)
如果没有示例代码,我会尝试通过列出我在ASP命名空间中找到的所有错误来帮助您。
1)当前的Page / UserControl中没有使用UserControl'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)你提到:
“但是当我发布时,这是一个错误”
在某些情况下,我的webApps无法在目标服务器中正确编译,但在测试中一切正常。
编译错误可能是配置错误,临时ASP.NET目录的权限以及应用程序池使用的标识。
如果您可以发布一些代码,我可以帮助您更好。
答案 1 :(得分:1)
你所说的还可以,但不是。我遇到了同样的问题并解决了但是删除了ASP。部分,所以在示例中更改此代码
ASP.ascx_buscador buscador = new ASP.ascx_buscador();
这个 ASCX_buscador = new ASCX_buscador();
现在一切都很好。请注意,在新代码中ASCX_现在是大写的(智能感知会帮助你)
在这里找到解决方案: Getting namespace name not found for ASP.net user control