Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.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# Powershell可以';无法通过wcf查看变量_C#_Wcf_Powershell_Azure_Powershell 2.0 - Fatal编程技术网

C# Powershell可以';无法通过wcf查看变量

C# Powershell可以';无法通过wcf查看变量,c#,wcf,powershell,azure,powershell-2.0,C#,Wcf,Powershell,Azure,Powershell 2.0,我有一个powershell脚本,可以创建azure vm,并在服务器上安装Microsoft Dynamics Nav等等。脚本设置一组变量,然后调用下标 我可以通过管道从C#调用这个脚本,没有问题。虚拟机被创建,所有的一切 但是,如果我创建一个WCF客户机和服务,并且该服务创建管道并执行脚本,那么就会出现一个主要问题 不知何故,下标并不知道所有的变量 简言之:如果调用直接来自控制台程序,而如果调用通过wcf,我的脚本如何工作得完美 Ps:这不是一个关于权限的问题,因为wcf服务由IIS托管并

我有一个powershell脚本,可以创建azure vm,并在服务器上安装Microsoft Dynamics Nav等等。脚本设置一组变量,然后调用下标

我可以通过管道从C#调用这个脚本,没有问题。虚拟机被创建,所有的一切

但是,如果我创建一个WCF客户机和服务,并且该服务创建管道并执行脚本,那么就会出现一个主要问题

不知何故,下标并不知道所有的变量

简言之:如果调用直接来自控制台程序,而如果调用通过wcf,我的脚本如何工作得完美

Ps:这不是一个关于权限的问题,因为wcf服务由IIS托管并在管理员帐户下运行

这就是我在wcf和Direct project中调用脚本的方式

        string path = "absolute path to script.ps1"
        Runspace runSpace = RunspaceFactory.CreateRunspace();
        runSpace.Open();
        try
        {
            RunspaceInvoke runSpaceInvoker = new RunspaceInvoke(runSpace);
            runSpaceInvoker.Invoke("Set-ExecutionPolicy Unrestricted");
            Pipeline pipeLine = runSpace.CreatePipeline();

            Command myCommand = new Command(path);
            param = new CommandParameter("some value","some value")
            myCommand.Parameters.Add(param);
            pipeLine.Commands.Add(myCommand);

            var results = pipeLine.Invoke();                
            runSpace.Close();
            return true;
        }
        catch (Exception)
        {
            runSpace.Close();
            return false;
        }

欢迎来到StackOverflow!我不习惯使用powershell,但是对于那些可能帮助您的人来说,在您的问题中添加一些代码肯定会有所帮助。问题是,如果您直接从项目中调用脚本,那么脚本工作得非常完美。如果在powershell ISE(Microsoft的编辑器)中打开脚本并在那里运行,也不会出现问题。问题是,这些下标没有访问全局变量的权限。直接调用脚本和通过wcf调用脚本的代码是相同的。唯一的区别是,一个调用直接调用脚本,另一个调用通过wcf服务。包含用于生成Powershell脚本的代码可能会有所帮助。对于C#和WCF来说,我们都会来到StackOverflow!我不习惯使用powershell,但是对于那些可能帮助您的人来说,在您的问题中添加一些代码肯定会有所帮助。问题是,如果您直接从项目中调用脚本,那么脚本工作得非常完美。如果在powershell ISE(Microsoft的编辑器)中打开脚本并在那里运行,也不会出现问题。问题是,这些下标没有访问全局变量的权限。直接调用脚本和通过wcf调用脚本的代码是相同的。唯一的区别是,一个调用直接调用脚本,另一个调用通过wcf服务。包含用于生成Powershell脚本的代码可能会有所帮助。对于C#和WCF