2013-02-19 72 views
1

我想一个别名声明为静态类:System.Configuration.ConfigurationManager;静态类的别名System.Configuration.ConfigurationManager;

我想这个别名可用来,所以我一直试图做的是,我的类的所有方法:

public class MyClass 
{ 
    using conf = System.Configuration.ConfigurationManager; 

    public void MethodOne() 
    { 
     string appConfigStr = conf.AppSettings["someAppSettings"].ToString() 
    } 
} 

但是上面提出了以下错误:在类,结构或接口成员声明中使用无效令牌

有什么我可以做别名这个配置管理器类吗?

回答

1

using指令可以被用来创建当前.cs文件的范围之内的别名。

using conf = System.Configuration.ConfigurationManager; 

namespace MyNamespace 
{ 
    public class MyClass 
    { 
     public void MethodOne() 
     { 
      string appConfigStr = conf.AppSettings["someAppSettings"].ToString() 
     } 
    } 
} 

了解更多信息

+0

我给你的答案,因为你是第一个解释说我可以使用文件内和命名空间外使用谢谢! – 2013-02-19 14:35:15

+0

无论哪种方式实际上工作。文档给出'namespace'内部和外部的'using'指令的例子。 – 2013-02-19 14:36:46

+0

哦好吧,谢谢你没注意到 – 2013-02-19 14:41:19

1

在类内不能有using声明。您收到的错误消息在这方面非常具体。
为了解决这个问题,只需把它放在你的类之外:

using conf = System.Configuration.ConfigurationManager; 

public class MyClass 
{ 
    public void MethodOne() 
    { 
     string appConfigStr = conf.AppSettings["someAppSettings"].ToString() 
    } 
} 
+0

感谢您的回答:-) – 2013-02-19 14:25:16

1

using创建别名必须在外面一类范围内使用,但在组装或命名空间范围!

// Here here here here here here :) 
using conf = System.Configuration.ConfigurationManager; 

public class MyClass 
{ 
    public void MethodOne() 
    { 
     string appConfigStr = conf.AppSettings["someAppSettings"].ToString() 
    } 
} 
1

必须将那使用您的类定义之外的语句就像编译器告诉你见this documentation

using conf = System.Configuration.ConfigurationManager; 

public class MyClass 
{ 
    public void MethodOne() 
    { 
     string appConfigStr = conf.AppSettings["someAppSettings"].ToString() 
    } 
} 

请参阅第9.4节“使用指令”中的C#语言规范。