我正在尝试实现 ASP.net 应用程序,该应用程序需要连接 Microsoft 分析服务 (SSAS) 以从多维数据集和维度中检索数据。
static void Main(string[] args)
{
StringBuilder connectionStringBuilder = new StringBuilder();
connectionStringBuilder.Append("Data Source=MyDataSource;");
connectionStringBuilder.Append("Initial Catalog=MyOlapDatabase;");
connectionStringBuilder.Append(@"User Id=OlapServerMachineName\MyUserName;");
connectionStringBuilder.Append("Password=MyPassword;");
connectionStringBuilder.Append("Provider=MSOLAP.5;");
connectionStringBuilder.Append("Persist Security Info=True;");
connectionStringBuilder.Append("MDX Compatibility=1;");
connectionStringBuilder.Append("Safety Options=2;");
connectionStringBuilder.Append("MDX Missing Member Mode=Error;");
connectionStringBuilder.Append("Update Isolation Level=2;");
using (var connection = new AdomdConnection(connectionStringBuilder.ToString()))
{
connection.Open();
}
}
此代码引发以下异常
无法建立连接。确保服务器正在运行。
内部异常说
无法从传输连接读取数据:现有连接被远程主机强行关闭。
内部异常的内部异常是
无法从传输连接读取数据:现有连接被远程主机强行关闭。
另一方面,我可以使用相同的用户名和密码从 Excel 连接到此分析服务,如下所示
我尝试按照此处所述设置对 Olap 服务器的 HTTP 访问。通过 IIS 设置上的匿名身份验证,我能够成功连接。但是,当我禁用匿名选项并启用基本身份验证时,我再次无法从我的客户端工具连接,但 Excel 与基本身份验证一起工作正常。
但是尝试使用 HTTP 访问只是为了临时解决方案。我不想使用该选项。我希望能够像在我的客户端应用程序中的 excel 中一样连接 SSAS。
我的问题是,我的连接 SSAS(不起作用)和 excel 身份验证(工作完美)之间的区别是什么?
先感谢您。