无法在SQL Anywhere 16中加载加密DLL“dbfips16.dll”

时间:2017-02-09 19:22:19

标签: c# dll .net-core sqlanywhere

我正在尝试将我的C#应用​​程序连接到SQL Anywhere 16数据库,并且我在登台服务器中不断收到相同的错误。

  

无法在SQL Anywhere 16中加载加密DLL“dbfips16.dll”

我正在使用dotnet核心和this nuget包。我已经尝试将ENC=NONE放入连接字符串并检查SQLCONNECT环境变量,这是我在this问题中看到的。 (不退出)

PS:我不想使用加密。

这是我的代码。错误发生在con.Open();

public virtual T ExecuteQuerySql<T>(
      Func<IDbConnection, T> exec
      , IDbTransaction transaction = null
  )
  {
      var hasTransaction = transaction != null;
      var con = transaction?.Connection ?? GetSAConnection();
      if (con.State != ConnectionState.Open)
          con.Open();
      var ts = transaction ?? con.BeginTransaction();
      try
      {
          return exec(con);
      }
      finally
      {
          ts.Commit();
          if (!hasTransaction)
          {
              ts.Dispose();
              con.Dispose();
          }
      }
  }

1 个答案:

答案 0 :(得分:1)

我找到了答案! 我将nuget包从iAnywhere.Data.SQLAnywhere.v4.5 16.0.0.20433更改为16.0.0.19484,现在效果很好:)