全局导入/使用.NET中的别名

时间:2010-03-19 20:10:00

标签: .net asp.net namespaces global alias

在一个文件/类中使用导入别名,我们可以通过分配我们自己的自定义别名来引用类库命名空间:

' VB
Imports Db = Company.Lib.Data.Objects 

// C#
using Db = Company.Lib.Data.Objects;

然后我们可以使用我们指定的Company.Lib.Data.Objects别名来引用Db内的类。

是否可以在全局级别执行此操作,以便将别名应用于整个解决方案而不是仅应用于一个文件/类?

目前,我们正在使用Web应用程序,所以我希望我们可以在web.config中添加一些内容,但我也对使用Windows窗体,控制台应用程序和/或类库是否可行感兴趣。

2 个答案:

答案 0 :(得分:18)

是的,这是VB.Net项目中支持的方案。这样做的方法如下

  • 右键单击解决方案资源管理器中的项目,然后选择属性
  • 转到参考选项卡
  • 在“导入的命名空间”字段中输入“Db = Company.Lib.Data.Objects”
  • 点击“添加用户导入”

这将为项目中的所有文件设置别名。

然而,这在C#项目中不起作用。 C#作为一种语言没有全局使用/导入的概念。相反,它只在文件级别支持它们。

答案 1 :(得分:2)

在您网站的web.config文件中 - 或者很可能是项目的app.config文件(未确认)

    <pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
        <namespaces>
            <clear/>
            <add namespace="System"/>
            <add namespace="System.Collections"/>
            <add namespace="System.Collections.Specialized"/>
            <add namespace="System.Configuration"/>

您在本节中添加的任何内容都应该是代码页面顶部的Imports子句的有效替代。为我工作的奇迹,让我知道它是否有助于你