0

我们有一个 WPF 应用程序,它从 Analysis Services Cube 中获取数据。客户端使用 ADOMD.NET 直接连接到数据库。

WPF 应用程序在现有的 Windows XP 机器上运行良好。但是,Windows 7 会引发以下错误:

System.Reflection.TargetInvocationException: An exception occurred during the operation, making the result invalid.  Check InnerException for exception details. ---> Microsoft.AnalysisServices.AdomdClient.AdomdConnectionException: The connection either timed out or was lost. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host

我已将问题进一步缩小到有关如何使用 ADOMD.NET 检索数据的问题。据我了解,有4 种方法可以检索数据。只有当我使用 CellSet 时才会发生此错误。

事实上,我可以使用相同的 MDX 语句,它会导致上面的异常使用 XmlReader 返回数据。只有当我使用 CellSet 时才会抛出异常。

有任何想法吗?

4

1 回答 1

0

事实证明,这是高级加密标准 (AES) 感知操作系统上的 Kerberos 中的一个错误。这意味着 Windows Vista+ 和 Windows Server 2008+。显然,它已在 Windows 7 和 Windows Server 2008 R2 中修复。

在我上面的场景中,我有 Windows 7 客户端连接到 Windows Server 2008,因此我们需要仅将修复应用于服务器。修复程序位于KB969083中。

如果您正在寻找更多详细信息,则需要进行大量搜索才能找到问题。知识库根本没有提到我上面的确切错误,显然,该错误是错误表现出来的众多方式之一。

因此,如果您愿意,这里有更多链接供您进一步阅读:

  • 将 Analysis Services 配置为在高级加密标准感知操作系统上使用 Kerberos 身份验证后可能会出现更新的错误(此处
  • Windows Server 2008 Kerberos 错误 – SSAS 数据的传输连接问题(此处)
  • SSAS:Kerberos 杀死 Windows Server 2008 上的“大型”MDX 查询(此处
于 2011-02-11T17:06:07.123 回答