56

我正在尝试创建一个管理器类以与我的图表工具一起使用,问题是我使用的工具,对 3d 和 2d 图表使用相同的名称,这在我尝试添加 2d 库时导致引用不明确。 .任何想法如何最好地解决这个问题?

例如,

using tool.2dChartLib;
using tool.3dChartLib;

BorderStyle 是这两者的成员

我试过投射我使用 BorderStyle 的区域。我想如果我只是参考它可能会起作用,tool但这意味着我将有数百tool.class行而不是class

4

3 回答 3

97

如果两个命名空间中都存在同名的类型,您有两种选择:

1)如果类型的数量很少,为该类型创建一个别名:

using BorderStyle3d = tool.3dChartLib.BorderStyle;

2)如果类型的数量很大,可以为命名空间创建一个别名:

using t3d = tool.3dChartLib;

然后在你的代码中......

t3d.BorderStyle
于 2013-01-03T14:46:59.087 回答
10

您可以使用完整的类型名称,或创建别名:

using 2dBorderStyle = tool.2dChartLib.BorderStyle;
于 2013-01-03T14:45:04.810 回答
6

使用命名空间别名

using twoDimensionLib = tool.2dChartLib;
using threeDimensionLib tool.3dChartLib;
于 2013-01-03T14:43:54.303 回答