C#中使用命名空间来分割不同的层级,在不同的层级中可以使用相同的类声明和变量声明。在程序中使用不同命名空间的下的相同名称的类时:可以用一下这几种方法进行限定:

1.使用完全限定名

using System;namespace NamespaceExample
{
class Test { } namespace InnerNamespace
{
class Test { }
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine(typeof(NamespaceExample.Test));
Console.WriteLine(typeof(InnerNamespace.Test));
}
}
}

2.命名空间别名:给不同的命名空间取个别名

using System;
using WinFroms = System.Windows.Forms;
using WebForms = System.Web.UI.WebControls; namespace NamespaceExample
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(typeof(WinFroms.Button));
Console.WriteLine(typeof(WebForms.Button));
       Console.ReadKey();
}
}
}

3.全局命名空间命名:当一个类不存在人和命名空间时,可以是用global限定名进行选择

using System;
class Test { }
namespace NamespaceExample
{
class Test { }
class Program
{
static void Main(string[] args)
{
//不使用限定名向上搜索匹配的命名空间,查找不到会输出错误
Console.WriteLine(typeof(Test));
Console.WriteLine(typeof(global::Test));
}
}
}

4.外部别名
使用外部别名的话需要先在引用的特性那里设置别名为:ExtenNsp

然后在代码中使用

extern alias ExtenNsp;
using System; namespace NamespaceExample
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(typeof(ExtenNsp::System.Data.DataRowComparer));
}
}
}

C#中命名空间别名的使用的更多相关文章

  1. 21.命名空间别名限定符::和global全局名称空间限定符

    命名空间别名限定符(::)用于查找标识符,它在指定的别名的命名空间中查找运算符,如下代码是在全局名称空间中查找System.Console.WriteLine("Hello World&qu ...

  2. php中命名空间和use

    php中命名空间和use 总结 php中的namespace就有点像java中package包的概念 php中的use的概念就是用别人的命名空间中的类 php中的include enquire是引入文 ...

  3. thinkPHP5 命名空间别名

    命名空间别名 对比 use app\index\model\User; 和 use model\User; 关键:\think\Loader::addNamespaceAlias('model','a ...

  4. ASM中的别名

    在ASM中的别名,是为了方便管理. 在ASM中创建别名,一种是在RDBMS中创建,另外一种是在ASM中创建,区别就是在ASM中创建的别名,在RDBMS中是不可见的. 在RDBMS中创建别名: SQL& ...

  5. 【SQL】Update中使用表别名、如何用表中一列值替换另一列的所有值

    Update中使用表别名 select中的表别名: select * from TableA as ta update中的表别名: update ta from TableA as ta 如何用表中一 ...

  6. Mybitis配置文件中的别名以及mapper中的namespace

    1 基本知识 MyBatis中如果每次配置类名都要写全称也太不友好了,我们可以通过在主配置文件中配置别名,就不再需要指定完整的包名了. 别名的基本用法: <configuration> & ...

  7. Chapter3_操作符_方法调用中的别名问题

    接下来展示方法调用中的别名问题,方法调用中的别名问题指的是,将一个对对象的引用传递给某一个方法时,方法操作的是这一个特定的引用而不是这个引用的拷贝. class Person{ float heigh ...

  8. Mybatis 全局配置文件中typeAliases(别名)

    在具体的mapper.xml文件中,定义很多的statement,statement需要parameterType指定输入参数的类型.需要resultType指定输出结果的映射类型. 如果在指定类型时 ...

  9. Mybatis中的别名的起源

    1.Mybatis中的别名的起源 我们对别名的认识最初是在数据库中,例如:数据库之select时取别名的做法是这样的: select 列名 as 列别名,//方法1 列名 列别名,//方法2 from ...

随机推荐

  1. atitit。获取表格的字段注释metadata的原理以及AND 字段表格描述文档方案

    atitit.获取表格的字段注释metadata的原理以及AND 字段表格描述文档方案 1. 通过sql ide navicate获取(推荐)通过meatadata数据库获取 1 2. 通过代码获取 ...

  2. Hadoop在线分析处理(OLAP)

    数据处理与联机分析处理 ( OLAP ) 联机分析处理是那些为了支持商业智能,报表和数据挖掘与探索等业务而开展的工作.这类工作的样例有零售商按地区和季度两个维度计算门店销售额,银行按语言和月份两个维度 ...

  3. nginx在用户使用ie的使用重定向到/nginx-MSIE目录下

    [root@web01 ]# cat /app/server/nginx/conf/rewrite/default.conf #rewrite ^/index\.html /index.php las ...

  4. location 符号

    元字符 描述 \ 将下一个字符标记符.或一个向后引用.或一个八进制转义符.例如,“\\n”匹配\n.“\n”匹配换行符.序列“\\”匹配“\”而“\(”则匹配“(”.即相当于多种编程语言中都有的“转义 ...

  5. iPhone4 降级6.12教程 无须SHSH 不装插件 不睡死[转载] by 轻鸢

    无shsh降级电脑系统,细节操作等其它影响因素较多,不确保每个人都能成功,楼主发帖前刷机几十次均成功.步骤有些繁琐,按照步骤每一步都正确可保证最后不睡死 注意一下,无SHSH降级都是不完美的,开机需要 ...

  6. vss安装及服务器端、客户端配置图文教程

    安装VSS 一.双击setup. 之后点完成.就安装完了! 服务器端VSS配置 一.选择开始——所有程序——打开 一直下一步  到完成 二.然后再打开 说明:把这个enable rights and  ...

  7. javaweb reponse 写出文件

    Map map = getSearchValue(); File excelFile = orderService.getexportexcel(id,map); InputStream is = n ...

  8. Python操作Word【批量生成文章】

    http://www.cnblogs.com/codex/p/4668396.html 需要做一些会议记录.总共有多少呢?五个地点x7个月份x每月4篇=140篇.虽然不很重要,但是140篇记录完全雷同 ...

  9. AndroidStudio添加Android源码

    找了半天没找到,还是用google好啊!修改如下,打开如下的build.gradle,修改compileSdkVersion 为你下载的源码版本号. Open your sdk manager fro ...

  10. Unix系统编程()检查进程的存在

    检查进程的存在 kill系统调用还有另一重功用.若将参数sig指定为0(即所谓空信号),则无信号发送. 相反,kill仅会去执行错误检查,查看是否可以向目标进程发送信号. 从另一角度来看,这意味着,可 ...