从网站

时间:2017-03-15 10:18:58

标签: asp.net sql-server asp.net-mvc powerbuilder powerbuilder.net

我有一个PowerBuilder.net控制台应用程序,它使用SQLNCLI10连接SQL Server 2008 R2。此应用程序需要从托管在同一服务器中的ASP.NET MVC网站执行,并且其输出已经过了。

这是在MVC上执行应用程序的代码:

var proc = new System.Diagnostics.Process
{
    StartInfo = new System.Diagnostics.ProcessStartInfo
    {
        FileName = ConfigurationManager.AppSettings["PB_EXE"],
        Arguments = Credentials.ClientId + " " + reference,
        UseShellExecute = false,
        RedirectStandardOutput = true,
        WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden
    }
};

当从MVC执行应用程序时,PBTransaction对象返回通用"未连接的事务" sql错误。

问题是,应用程序运行良好,带有参数调用可执行文件的.bat。更重要的是,使用上述相同代码的简单WinForms可以成功连接事务。

我已经尝试将网站的ApplicationPool设置为服务器的管理员,结果相同。

1 个答案:

答案 0 :(得分:0)

我首先要检查解决 PB.NET控制台应用程序上的连接问题。

  1. 将一些日志记录放入控制台应用程序,并在尝试连接之前和之后立即检查Transaction对象。它可能会提供必要的信息来识别罪魁祸首。
  2. 确保PowerBuilder数据库连接运行时库(例如PBORA010.DLL)安装在服务器上,并且可供运行该应用程序的角色访问。
  3. 如果连接使用ODBC / JDBC,请确保控制台应用程序可以访问服务器上所需的任何DSN。