何时使用“using [alias = ]class_or_namespace;” 在 c# 中?

ACP*_*ACP 2 c# implementation namespaces

我在一篇文章中看到了以下命名空间实现,我真的不明白他们为什么这样做?

using sysConfig =System.Configuration ;

string connectionString = sysConfig.ConfigurationManager.
                         ConnectionStrings["connectionString"].ConnectionString;
Run Code Online (Sandbox Code Playgroud)

我知道它可以很容易地实现这样,

string connectionString = System.Configuration.ConfigurationManager.
                         ConnectionStrings["connectionString"].ConnectionString;
Run Code Online (Sandbox Code Playgroud)

任何建议何时使用第一种类型......

Gor*_*aci 5

假设您想要使用一个包含名为“Lib.IO.File”的类的库。但您还想使用 System.IO.File。这会导致一个问题:

using System.IO;
using Lib.IO;
class Program
{
    static void Main(string[] args)
    {
        File f; // ambiguous type! which File class do you mean?
    }
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,你可以这样做:

using Sys = System.IO;
using Lib = Lib.IO;
class Program
{
    static void Main(string[] args)
    {
        Sys.File f1;
        Lib.File f2;
    }
}
Run Code Online (Sandbox Code Playgroud)

尽管在您的示例中,目的显然是输入更少的名称空间。