• C#中不同程序集(dll)存在相同的命名空间


    一、遇到问题
      1.类型“IDatabase”同时存在于“StackExchange.Redis.StrongName, Version=1.2.6.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46”和“StackExchange.Redis, Version=2.0.0.0, Culture=neutral, PublicKeyToken=c219ff1ca8c2ce46”中
      2.StackExchange.Redis.StrongName和StackExchange.Redis两个程序集中都有StackExchange.Redis命名空间,这时使用 命名空间.类名 不能解决冲突问题

    二、解决方案

      1.将相同命名空间的不同程序集分别进行取别名
      2.我这里有两个程序集,则只给其中一个程序集定义别名,根据需要我选中StackExchange.Redis.StrongName设置别名,
              右键属性,设置一个别名:StackExchangeRedisStrongName,别名根据自己需要进行自定义
      3.通过"extern alias"关键字导入别名 ,在类文件首部加上 :extern alias 别名;

    extern alias StackExchangeRedisStrongName;
    

      4.(1)通过别名.命名空间.类名 使用相关的类:

    StackExchangeRedisStrongName.StackExchange.Redis.IDatabase
    

         (2)或者使用

    using StackExchangeRedisStrongName.StackExchange.Redis;
    

      

  • 相关阅读:
    观察者模式
    简单工厂
    一个数组先按值排序,如果它的值有相同,就再按键排序(转)
    Python 一些好玩的函数
    python 一些基础知识
    python3 写CSV文件多一个空行的解决办法
    pandas学习笔记
    pycharm2017.1破解方法
    python的Debug调试
    python中字典的陷阱
  • 原文地址:https://www.cnblogs.com/qidakang/p/14581314.html
Copyright © 2020-2023  润新知