我正在尝试将我的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();
}
}
}
答案 0 :(得分:1)
我找到了答案!
我将nuget包从iAnywhere.Data.SQLAnywhere.v4.5 16.0.0.20433
更改为16.0.0.19484
,现在效果很好:)