1

以下异常的可能原因是什么?

System.PlatformNotSupportedException: 'ResourcePool' is not supported on the current platform.
   at System.EnterpriseServices.Platform.Assert(Boolean fSuccess, String function)
   at System.EnterpriseServices.Platform.Assert(Version platform, String function)
   at System.EnterpriseServices.ResourcePool..ctor(TransactionEndDelegate cb)
   at System.Data.SqlClient.ConnectionPool..ctor(DefaultPoolControl ctrl)
   at System.Data.SqlClient.PoolManager.FindOrCreatePool(DefaultPoolControl ctrl)
   at System.Data.SqlClient.SqlConnectionPoolManager.GetPooledConnection(SqlConnectionString options, Boolean& isInTransaction)
   at System.Data.SqlClient.SqlConnection.Open()

该平台是 Windows 2003 Server SP2。相同的代码已在 Windows XP SP2 上进行了测试,没有任何问题。但是,无论平台如何,了解导致此异常的原因会很有趣。

4

1 回答 1

1

我已经使用 Reflector 查看了源代码,但似乎在 ResourcePool 的静态构造函数中找不到任何对 Platform.Assert 的调用。

Windows 2003 服务器是 64 位的吗?这可能是问题所在。

于 2008-10-06T22:27:17.093 回答