正在从WCF调用SSIS包

本文关键字:SSIS 调用 WCF | 更新日期: 2023-09-27 18:28:23

这里也有类似的问题,但没有真正的答案。

这是上一个问题:从WCF服务调用SSIS包(tcp绑定)

我也有类似的问题。我有一个用于UI的VB.net应用程序,它调用我在IIS中本地托管的C#WCF服务,该服务又调用我使用Project Deployment方法部署到SQL Server 2012的SSIS包。如果我使用WCF测试客户端来测试对SSIS包的WCF调用,它运行良好。一旦我将WCF服务部署到IIS,然后尝试在Visual Studio 2013中运行我的VB.net应用程序,并逐步完成调用WCF服务的代码,然后逐步进入WCF服务代码,一旦它到达试图连接到我的SQL Server实例的代码行,我就会得到一个异常,说明

无法连接到服务器

InnerException

用户"DomainName''PCName$"登录失败

WCF代码中的连接字符串如下所示:

SqlConnection connection = new SqlConnection(@"Data Source=PCName'SQLServerInstance;Initial Catalog=DBName;Integrated Security=SSPI;");

我已经尝试为DomainName'PCName$向SQL Server添加Windows身份验证登录,但没有什么不同。为什么当我在Visual Studio中使用WCF测试客户端测试我的SQL Server实例时,WCF服务能够成功连接到它,而当我将WCF服务发布到本地IIS时却无法成功连接?

请帮帮我,我什么都试过了(我想)。

正在从WCF调用SSIS包

我找到了修复程序!谢谢你的建议,迪恩,这太糟糕了。我是Stack Overflow的新手,所以请原谅我格式不好。基本上,答案是在这里找到的:

https://social.msdn.microsoft.com/Forums/sqlserver/en-US/ff441dc3-b43b-486b-8be1-00126cf53812/calling-ssis-packages-from-aspnet-packages-with-file-system-tasks-end-abruptly?forum=sqlintegrationservices

我在IIS中创建了一个新的应用程序池,仅用于WCF服务。我将该池的标识更改为一个管理员用户,该用户在SQLServerDB上具有dbo权限。然后,我将WCF服务移动到新的应用程序池中,重新启动IIS,一切都正常了!