代码之家  ›  专栏  ›  技术社区  ›  Ash

内部版本号不匹配:Sybase ASE版本有问题

  •  1
  • Ash  · 技术社区  · 15 年前

    我有一个C#控制台应用程序,它引用 Sybase.Data.AseClient .

    • dev machine的dll版本为1.15.325
    • UAT的版本是1.12.XYXZ
    • 产品版本为1.15.115

    我在一台类似prod的机器上发现了下面的异常


    在Sybase.Data.AseClient.AseConnection.CheckVersion() 在Sybase.Data.AseClient.AseConnection..cctor() 在Sybase.Data.AseClient.AseConnection..ctor(字符串连接字符串)

    我正在考虑在app.config中配置运行时绑定,并在运行时执行此重定向。


    我的方法干净吗?

    3 回复  |  直到 15 年前
        1
  •  1
  •   Hans Passant    15 年前

    这不是一个可以用.config文件解决的问题。它正在寻找一个非托管代码的旧版本,它实际上起到了很大的作用。该名称出现在错误消息sybdrvado115a.dll中。我会先查看c:\ windows\system32。

    您必须更新该计算机上的Sybase提供程序才能通过此异常。或者在某个地方找到托管包装器的旧版本。升级和更新所有机器绝对是更好的解决方案。

        2
  •  1
  •   James Kovacs    15 年前

        3
  •  0
  •   Ash    15 年前

    我决定让DEV机器与UAT相同,从而降低DEV机器上的Sybase Provider版本。UAT和PROD由系统人员制作。我认为这比运行时程序集加载要好,因为我们将拥有透明的开发环境,人们只会使用他们可以在UAT和PROD中运行的功能。即使我没有做任何事情,这是因为使用了较低版本的Sybase提供程序,所有环境都保持一致是安全的。

    推荐文章