• dll版本号相同,提示加载dll失败


    项目结构如下图:

    Service工程调用两个Datamodel.sql中的方法,两个 Datamodel.sql中的方法分别使用了3.1.0.0版本的xxx.dll,Service工程中总是调用某一Datamodel.sql中的方法正常,别一个报错:未能加载xxx.dll...按常理两个dll的版本号相同不应该存在版本的问题,但实际的问题却就是版本号冲突。

    根据http://www.cnblogs.com/OpenCoder/archive/2010/07/29/1788297.html#2131119中的说法,service工程引用两个工程后,它们bin目录下的dll只要在Datamodel.sql中使用过便会拷贝到Service的bin目录下,不会存在service的bin目录不存在xxx.dll的情况。

    无奈之下,我查看了各Datamodel.sql的bin目录下的xxx.dll文件的属性,发现这两个同一版本的dll的文件大小竟然不一样,所以可能虽然两个dll版本号相同,其实是不同的版本。我将两个工程调用同一个xxx.dll,问题解决了。

    总结: 建议同一解决方案,或者同一项目[指一个软件项目,不是VisualStudio中所指的项目]使用的公共程序集最好放在一个文件夹,所有的引用都引用都用这个文件夹下的dll,这样就不会出现这种版本号冲突的问题了。

  • 相关阅读:
    为什么你需要升级 pip
    将py文件封装为exe
    Kafka原理分析之基础篇
    顶象验证码破解与研究
    优秀学员学习总结分享(三)
    优秀学员学习总结分享(二)
    ES6数组的扩展--Array.from()和Array.of()
    ES6核心特性
    优秀学员学习总结分享(一)
    JavaScript常见的六种继承方式
  • 原文地址:https://www.cnblogs.com/larson/p/2087966.html
Copyright © 2020-2023  润新知