导入的命名空间的别名

时间:2011-10-28 14:17:01

标签: c# .net alias using

我正在使用StyleCop来验证编码风格。它迫使我按如下方式编写代码:

using AF.Data.Oracle
{
   using Oracle.DataAccess.Client; // *** Compile error here ***

   class Foo {}
}

但是我经常收到一个错误,告诉我在命名空间'AF.Data.Oracle'中找不到'DataAccess'这个类型。

我知道我可以为Oracle.DataAccess.Client中的每个类型使用别名,但这会添加几个别名定义。

但是可以为名称空间使用别名吗?

1 个答案:

答案 0 :(得分:4)

使用global namespace alias

namespace AF.Data.Oracle
{
   using global::Oracle.DataAccess.Client; 

   class Foo {}
}

这将避免AF.Data.Oracle与以Oracle开头的任何命名空间之间的命名空间冲突,确保您指的是命名空间根目录中的Oracle