Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.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对象_C# - Fatal编程技术网

C# 从进程外运行空间获取Powershell对象

C# 从进程外运行空间获取Powershell对象,c#,C#,我在进程外运行空间中运行C#中的powershell脚本以实现隔离。我有一些从脚本返回的复杂类型,但它们并没有完全返回——我只以字符串的形式获取类型的名称。如果我运行与C#相同的运行空间,我就可以完全访问对象的内部。在单独的运行空间中运行时,如何获取完整对象 例: using ( var run = RunspaceFactory.CreateOutOfProcessRunspace(null) ) { run.Open(); using ( PowerShell ps = Po

我在进程外运行空间中运行C#中的powershell脚本以实现隔离。我有一些从脚本返回的复杂类型,但它们并没有完全返回——我只以字符串的形式获取类型的名称。如果我运行与C#相同的运行空间,我就可以完全访问对象的内部。在单独的运行空间中运行时,如何获取完整对象

例:

using ( var run = RunspaceFactory.CreateOutOfProcessRunspace(null) )
{
    run.Open();
    using ( PowerShell ps = PowerShell.Create() )
    {
        ps.Runspace = run; //commenting this out gives me the full object in data
        ps.AddScript("Get-Process");
        var data = ps.Invoke(); //has array, but each baseobject is empty
    }
}