我正在使用:
- 优势数据库服务器 10
- Advantage.Data.Provider.dll (v.9.10.2.9)
在大多数工作站上,一切都很稳定,但今天我们的一位新客户报告说他在使用我们的应用程序时遇到了问题。日志显示以下阶段异常:
System.ArgumentException:连接字符串中无法识别的属性“用户 ID”。在 Advantage.Data.Provider.AdsConnectionStringHandler.ParseConnectionString(String strConnect) 在 Advantage.Data.Provider.AdsPoolManager.GetConnection(String strConnectionString, AdsInternalConnection& internalConnection, AdsConnectionPool& pool) 在 Advantage.Data.Provider.AdsConnection.Open()
一旦所有其他客户都可以正常使用相同的代码,我猜这个问题可能与运行环境有关,但我仍在试图找出究竟是什么导致了这个问题。
有任何想法吗?
更新
我刚刚浏览了Advantage.Data.Provider.dll
代码,发现它们使用 aHashtable
来匹配连接字符串属性,而Hashtable
' 的初始化对我来说看起来有点奇怪:
public static Hashtable CreateCaseInsensitiveHashtable()
{
return new Hashtable((IEqualityComparer) StringComparer.CurrentCultureIgnoreCase);
}
我想StringComparer.CurrentCultureIgnoreCase
这可能是个麻烦,但我需要检查一下。