Я пытаюсь создать собственный поставщик PowerShell в С#, который позволяет вам управлять элементами (в каталоге типа папки), пользователи должны иметь возможность переходить в -> файлы/папку и иметь возможность видеть дочерние элементы и т. д. и манипулировать этим. Моя проблема в том, что я всегда могу перейти в корневой каталог, однако, как только я попытаюсь установить свое местоположение в myAcme:/any_path_here_of_valid_item, произойдет ошибка, как показано ниже. Это странно, так как я могу получить предмет на этом пути. Я что-то здесь не понимаю или невозможно установить ваше местоположение на местоположение элемента (я пытаюсь установить свое местоположение на этот элемент, чтобы получить его дочерние элементы)
PS my****:\> cd myAcme:/
PS myAcme:\> get-item /files/folders/****
<Removed so you don' get hit by a wall of text but this displays the items info fine>
PS myAcme:\> cd myAcme:/files/folders/****
Set-Location : Cannot find path 'myAcme:/files/folders/****' because it does not exist.
At line:1 char:3
+ cd <<<< myAcme:/files/folders/****
+ CategoryInfo : ObjectNotFound: (myAcme:/files/folders/****:String) [Set-Location], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
Я пока не буду приводить здесь какой-либо код, так как более вероятно, что мне не хватает понимания концепции containercmdletprovider.
РЕДАКТИРОВАТЬ Я забыл добавить в отладчик, что ItemExists возвращает true, когда я выполняю команду cd myAcme:/files/folders/**