【问题标题】:C# using statement application scopeC# using 语句应用范围
【发布时间】:2013-05-30 21:36:28
【问题描述】:

我对同时处理多个文件的 using 语句有疑问。

我为我想在我的程序中使用的类创建了一个重载。 为此,我在我的一个文件中添加了以下 using 语句。

using ClassName = CustomClassName;

这有效,但仅适用于该特定文件。

有没有办法让它适用于我的整个项目?

【问题讨论】:

  • 这是 using 指令而不是 using 语句

标签: c# using


【解决方案1】:

没有。

using 指令针对每个文件。

您始终可以创建包含它的模板。

【讨论】:

  • 示例编辑模板供参考:stackoverflow.com/questions/2072687/…
  • 谢谢你的提示,但是它是一个现有的项目,并且在很多文件中都使用它。所以模板不是我要找的
【解决方案2】:

没有; C# 没有任何此类功能。

【讨论】:

    【解决方案3】:

    这称为类型别名,重新使用using 关键字可能会令人困惑,但它不是导入。

    此语句的目的是使某个类可以通过不同的名称访问。当您有不同的程序集链接到您的项目而意外地具有相同名称的类时,这很有用。

    例如,如果您有在 A 命名空间下定义类 FooA.dll 和在 B 命名空间下定义 Foo 类的 B.dll 程序集,则可以使用:

    using FooA = A.Foo;
    using FooB = B.Foo;
    

    区分两者。

    这个范围通常是当前文件,不过,如果你碰巧在同一个文件中定义了多个命名空间,你可以将其范围限定在文件中的命名空间:

    using FooA = A.Foo;
    
    namespace N1
    {
        // knows about FooA;
        using FooB = B.Foo;
    }
    
    namespace N2
    {
        // knows about FooA
        // does not know about FooB
    }
    

    实际上,您可以使这个别名更明确,但不超过文件的范围。

    【讨论】:

      【解决方案4】:

      一个简单的解决方案是创建一个模板并将其用于您的项目或类中。这将为您提供一种根据需要使用欲望使用和指令的方法。

      这里是创建模板的好示例。

      http://www.rhyous.com/2010/02/17/how-to-modify-the-default-new-class-template-in-visual-studio-2008/

      http://visualstudiomagazine.com/articles/2008/09/01/define-your-own-item-templates.aspx

      【讨论】:

        猜你喜欢
        • 2011-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-09-13
        • 2020-09-30
        • 2016-05-31
        • 1970-01-01
        • 2013-05-07
        相关资源
        最近更新 更多