Я пишу команду, которая подключается к удаленной машине через PSsession, получает объект .NET с удаленной машины, а затем использует его локально.
Однако возвращаемый объект не являетсяобъект .NET, который я создал на удаленном конце, но объект PSCustomObject, который отказывается возвращаться к исходному объекту.
Кто-нибудь знает, как это сделать?
Этот метод простоодин из многих, так что общий ответ о том, как обрабатывать любой объект .NET, а не конкретный объект в этом методе, был бы оценен.
Я получаю ошибку;Невозможно привести объект типа 'System.Management.Automation.PSCustomObject' к типу 'System.IO.FileInfo'.
Знак благодарности
readonly PSSession session;
public FileInfo GetFileInfo(string p)
{
Pipeline pipe = session.Runspace.CreatePipeline();
string format = "(New-object System.IO.FileInfo \"{0}\") -as [System.IO.FileInfo]"; // Have tried many ways to force it to a FileInfo
string command = string.Format(format,p);
pipe.Commands.AddScript(command);
Collection<PSObject> res = pipe.Invoke();
foreach (PSObject ps in res)
{
return (FileInfo)ps.BaseObject;
}
// no items
return null;
}