CLR如何在运行时区分不同程序集中具有相同名称但没有名称空间的类?

可见的

CLR如何在运行时区分不同程序集中具有相同名称但没有名称空间的类?

例子 :

组装:组装1

public class Foo
{
    public void Test()
    {
        Console.WriteLine("Assembly 1 class Foo");
    }
}

请注意,类Foo没有任何名称空间。

组装:Assembly2

public class Foo
{
    public void Test()
    {
        Console.WriteLine("Assembly 2 class Foo");
    }
}

请注意,类Foo在这里也没有任何名称空间。

因此,Assembly1和Assembly2的类具有相同的名称,但没有名称空间。

程序集:TestAssembly1 ---->引用:程序集1

namespace TestAssembly1 
{
    public class TestAssembly1Class
    {
        public void CallFooMethod()
        {
            new Foo().Test();   //How CLR would know this Foo is from Assembly 1 at runtime?
        }
    }
}

程序集:TestAssembly2 ---------->引用:程序集2

namespace TestAssembly2 
{
    public class TestAssembly2Class
    {
        public void CallFooMethod()
        {
            new Foo().Test();   //How CLR would know this Foo is from Assembly 2 at runtime?
        }
    }
}

现在假设有一个可执行文件,说MyShell.exe,它具有Main方法。如下所示。

 class Program
    {
        static void Main(string[] args)
        {
            new TestAssembly1Class().CallFooMethod();
            new TestAssembly2Class().CallFooMethod();
        }
    }

因此,这里的问题是,两个Foo类都没有任何名称空间,那么在执行MyShell.exe时CLR如何区分这些冲突的Foo类?

ken2k

CLR如何在运行时区分不同程序集中具有相同名称但没有名称空间的类?

两种类型会有不同的 AssemblyQualifiedName

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

当类和名称空间具有相同名称时区分类和名称空间

来自分类Dev

如何在2个DLL中区分具有相同名称(和名称空间)的两个类?

来自分类Dev

如何在没有名称空间的情况下调用Ruby类

来自分类Dev

如何在没有名称空间的情况下调用Ruby类

来自分类Dev

如何声明对现有名称空间的引用,该名称空间可在运行时从javacript捆绑包获得

来自分类Dev

嵌套类没有名称空间

来自分类Dev

如何区分完全不同的Windows窗体应用程序运行的具有相同名称的多个进程?

来自分类Dev

如何在GDB中将具有相同名称的符号与不同的目标文件区分开?

来自分类Dev

没有名称的模板类

来自分类Dev

如何在带有前缀但没有名称空间的节点上使用xpath?

来自分类Dev

如何在没有名称空间的情况下获取属性值?

来自分类Dev

如何在没有名称空间的情况下访问XML元素

来自分类Dev

如何区分具有相同名称的进程

来自分类Dev

XML中没有名称空间的元素

来自分类Dev

检索没有名称空间的Office.customeXMLparts

来自分类Dev

PHP对象到没有名称空间的数组

来自分类Dev

XSLT创建没有名称空间的内容

来自分类Dev

没有名称空间的XSLT复制节点

来自分类Dev

XML中没有名称空间的元素

来自分类Dev

Java命名空间-不同包中具有相同名称的两个类

来自分类Dev

不同名称空间下具有相同结构的类之间的转换

来自分类Dev

在Yii2中使用没有名称空间的类

来自分类Dev

调用没有名称空间的静态自动加载的类

来自分类Dev

在运行时从对象的字符串名称创建具有泛型类型的类的实例和具有相同泛型类型的调用方法

来自分类Dev

当表单仅具有属性(即没有名称或ID)时,如何在scrapysharp中查找表单

来自分类Dev

如何在<form>中设置没有名称的名称:?

来自分类Dev

引用没有名称的类以在TypeScript的子类中使用不同的静态方法

来自分类Dev

具有相同名称的不同应用?

来自分类Dev

如何解析仅具有值但没有名称的JSON?

Related 相关文章

  1. 1

    当类和名称空间具有相同名称时区分类和名称空间

  2. 2

    如何在2个DLL中区分具有相同名称(和名称空间)的两个类?

  3. 3

    如何在没有名称空间的情况下调用Ruby类

  4. 4

    如何在没有名称空间的情况下调用Ruby类

  5. 5

    如何声明对现有名称空间的引用,该名称空间可在运行时从javacript捆绑包获得

  6. 6

    嵌套类没有名称空间

  7. 7

    如何区分完全不同的Windows窗体应用程序运行的具有相同名称的多个进程?

  8. 8

    如何在GDB中将具有相同名称的符号与不同的目标文件区分开?

  9. 9

    没有名称的模板类

  10. 10

    如何在带有前缀但没有名称空间的节点上使用xpath?

  11. 11

    如何在没有名称空间的情况下获取属性值?

  12. 12

    如何在没有名称空间的情况下访问XML元素

  13. 13

    如何区分具有相同名称的进程

  14. 14

    XML中没有名称空间的元素

  15. 15

    检索没有名称空间的Office.customeXMLparts

  16. 16

    PHP对象到没有名称空间的数组

  17. 17

    XSLT创建没有名称空间的内容

  18. 18

    没有名称空间的XSLT复制节点

  19. 19

    XML中没有名称空间的元素

  20. 20

    Java命名空间-不同包中具有相同名称的两个类

  21. 21

    不同名称空间下具有相同结构的类之间的转换

  22. 22

    在Yii2中使用没有名称空间的类

  23. 23

    调用没有名称空间的静态自动加载的类

  24. 24

    在运行时从对象的字符串名称创建具有泛型类型的类的实例和具有相同泛型类型的调用方法

  25. 25

    当表单仅具有属性(即没有名称或ID)时,如何在scrapysharp中查找表单

  26. 26

    如何在<form>中设置没有名称的名称:?

  27. 27

    引用没有名称的类以在TypeScript的子类中使用不同的静态方法

  28. 28

    具有相同名称的不同应用?

  29. 29

    如何解析仅具有值但没有名称的JSON?

热门标签

归档