【问题标题】:Is it possible to distinguish types with identical fully qualified names?是否可以区分具有相同完全限定名称的类型?
【发布时间】:2011-01-02 20:48:12
【问题描述】:

场景是我希望能够引用两个类似的第 3 方程序集(例如 assem1 和 assem2),它们都定义了具有相同完全限定名称的类型(例如 Example.MyType)。 有没有办法区分这些并单独引用它们?我相信答案是否定的,但确认或更正会很方便。

编辑:已回答 C# 2.0 及更高版本,但需要在 VB.Net 1.1 中回答

【问题讨论】:

    标签: c# vb.net namespaces


    【解决方案1】:

    您当然可以在 C# 中执行此操作 - 您需要使用 extern aliases 指定在每种情况下您想要哪一个。 Anson Horton 有一个有用的walkthrough

    不知道VB有没有类似的功能。

    当然,如果可以的话,避免这种情况是值得的 :)

    【讨论】:

    • 感谢乔恩,这正是我所需要的。不幸的是,它只在 C# 2.0 和更高版本中,我需要我可能应该提到的 VB.Net 1.1。在给你打勾之前,我会等待其他答案。
    • @Rich:恐怕我什至不知道该功能是否在 VB 中可用。如果是,我希望它也会出现在 VB 8 (VS 2005) 中。
    【解决方案2】:

    也许我误解了这个问题;如果您想将其作为项目的一部分(例如在 VS 中)引用,这对您没有帮助。但是,如果您需要在配置文件或其他任何内容中引用类型,则可以使用以下方法:

    使用包含程序集名称的完全限定名称(最好是程序集是强命名的),您可以将它们区分开来。请查看Type.AssemblyQualifiedName 了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-16
      相关资源
      最近更新 更多