Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# sql server作业失败,但在手动运行时仍有效_C#_Sql Server 2008 - Fatal编程技术网

C# sql server作业失败,但在手动运行时仍有效

C# sql server作业失败,但在手动运行时仍有效,c#,sql-server-2008,C#,Sql Server 2008,当手动运行时,此功能可以正常工作,但当我将其放入sql server作业的作业步骤中时,它失败了。错误代码为:“\”附近的语法不正确。SQLState 42000(错误102)步骤失败' \\server-sql\c$\BWServer\SFTPGETCONSOLEPARMS\SFTPGetConsole.exe "2|3" 它正在运行此代码以接收参数。看不出为什么它会像sql server作业中的“不正常”一样工作 if (args != null && args.Len

当手动运行时,此功能可以正常工作,但当我将其放入sql server作业的作业步骤中时,它失败了。错误代码为:“\”附近的语法不正确。SQLState 42000(错误102)步骤失败'

 \\server-sql\c$\BWServer\SFTPGETCONSOLEPARMS\SFTPGetConsole.exe "2|3"
它正在运行此代码以接收参数。看不出为什么它会像sql server作业中的“不正常”一样工作

 if (args != null && args.Length > 0)
            {
                Helper.AddtoLogFile("Parameter is : " + args[0]);
                string[] arrProgType = args[0].Split('|');

                if (arrProgType != null && arrProgType.Length > 0)
                {
                    for (int i = 0; i < arrProgType.Length; i++)
                    {
                        if (arrProgType[i].Trim().TrimStart('"').TrimEnd('"') == "1")
                        {
                            Order.RunOrder();
                        }
                        if (arrProgType[i].Trim().TrimStart('"').TrimEnd('"') == "2")
                        {
                            Shipment.RunShipment();
                        }
                        if (arrProgType[i].Trim().TrimStart('"').TrimEnd('"') == "3")
                        {
                            Acknowledgments.RunAcknowledgments();
                        }
                        if (arrProgType[i].Trim().TrimStart('"').TrimEnd('"') == "4")
                        {
                            Invoices.RunInvoices();
                        }
                    }
                }

            }
            else
            {
                Helper.AddtoLogFile("------ No program type parameter found");
            }
            Helper.AddtoLogFile("-------Program Ends ----------");
            return 0;
        }
    }

}
if(args!=null&&args.Length>0)
{
AddtoLogFile(“参数为:”+args[0]);
字符串[]arrProgType=args[0]。拆分(“|”);
if(arrProgType!=null&&arrProgType.Length>0)
{
for(int i=0;i
运行作业的用户没有访问
\\server sql\c$
的权限,您需要以有权限的用户身份运行作业,或者设置一个网络共享,作业运行的用户可以访问并使用该网络共享


当您手动运行它时,它工作的原因是代码以“您”的身份运行,而不是以工作搜索用户的身份运行。

可能是这样,但是有没有办法验证这是权限问题?我可以运行它吗?但它只在第一条线上工作,是否需要清理\\服务器sql\c$\BWServer\SFTPGetConsoleRMS\SFTPGetConsole.exe“2”\\server sql\c$\BWServer\SFTPGetConsoleRMS\SFTPGetConsole.exe“3”