我正在使用.NET 3.5开发ASP.NET Web应用程序,并遇到了以下问题:
我正在使用名称空间X.Web.Controls.Core
下的一个类,它引用了名称空间Utils
中的类X.X2.components.util
。
我收到错误,Utils
已在命名空间X.Web.Controls.Utils
中定义
这是不可能的,因为我找不到任何引用我正在处理的类的命名空间的东西。有什么想法吗?
答案 0 :(得分:6)
除非你有一个using
语句在某处引用它,否则我无法确定应该存在问题。请注意命名空间中的代码将隐式“看到”同一命名空间中的类,即使它们已在其他位置定义。
无论如何,您可以通过更改类名来解决您的问题(仅限当前代码文件):
using X2Utils = X.X2.components.util.Utils;
该类将在您的代码中命名为X2Utils
。或者,您可以为其命名空间创建快捷方式:
using X2util = X.X2.components.util;
现在您可以使用X2util.Utils
来引用该课程。
答案 1 :(得分:1)
您正在使用X.Web.Controls.Core,这是X.Web.Controls的子名称空间。这意味着X.Web.Controls中的命名空间Utils是隐式可见的。
使用Blixt建议的别名解决。