当两个名称空间之间发生冲突时,是否可以为编译器设置默认名称空间?
我的问题来自在C#ASP.NET应用程序中使用iTextSharp。我正在将iTextSharp库添加到页面中,但是这个库与标准的System WebControls库冲突了一些项目。
我知道我可以完全限定每个类引用以解决冲突,并且我知道我可以使命名空间别名以使用各地的完整资格来保存自己。
我想知道是否可以将一个命名空间(iTextSharp)别名并将我的代码中的所有引用默认为未命名的命名空间(WebControls)?
例如,如果我将iTextSharp别名为“text”:
ListItem l = new ListItem();
会引用Webcontrols但
text.ListItem l = new text.ListItem();
会引用iTextSharp。
我问,因为页面上有大量的webcontrols,我并不特别想要查看所有代码并对每一个代码进行限定。
提前感谢您的回复。
答案 0 :(得分:1)
那样完全,但你可以使用命名空间别名指令:
using System.Web.UI.WebControls;
using text = iTextSharp;
...
text::ListItem l = new text::ListItem();
你然后不想要using
的{{1}}指令,因为这会使iTextSharp
再次变得模棱两可。
答案 1 :(得分:0)
对于此porpuse,您可以使用aliases
using WebControls = System.Web.UI.WebControls;
所以当你引用WebControls
时,你正在使用System.Web.UI.WebControls