Имею следующее:
$test = Test-CsWebScheduler -TargetFqdn "pool.int.contoso.com"
Write-Output $test
Target Fqdn : pool.int.contoso.com
Target Uri : https://pool.int.contoso.com/Scheduler/
Result : Failure
Latency : 00:00:00
Error Message : Scheduling conference at
https://pool.int.contoso.com/Scheduler/Handler/WebSchedulerHandler.ashx failed
with status Failure.
Diagnosis :
Теперь вопрос:
Как я могу получить доступ к «Сообщению об ошибке», «Целевому Uri» или «Целевому Fqdn»? Я могу получить доступ к результату через:
Write-Output $test.result
Failure
без проблем, но поскольку у других есть место внутри, я не нашел способа получить к ним доступ. Я пробовал следующее (нашел здесь):
Write-Output $test."Target Uri"
or
Write-Output $test.{Target Uri}
Я также пробовал следующее:
$test | Select-Object -Property "Target Uri"
or
Write-Output ($test."Target Uri")
или очень простой:
$test."Target Uri"
но это не работает, и я не возвращаю значение (также нет ошибки). Единственное сообщение об ошибке, которое я получаю, - это когда я использую:
$test | select -ExpandProperty "Target Uri"
select : Property "Target Uri" cannot be found.
At line:1 char:9
+ $test | select -ExpandProperty "Target Uri"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (Microsoft.Rtc.S...s.WebTaskOutput:PSObject) [Selec
t-Object], PSArgumentException
+ FullyQualifiedErrorId : ExpandPropertyNotFound,Microsoft.PowerShell.Commands.SelectObjectCom
mand
Кто-нибудь знает, как я могу получить к нему доступ (не сбрасывая его во временный файл и не разбирая его)?
Обновление 01:
как и было запрошено, вот результат $ test | гм
$test | gm
TypeName: Microsoft.Rtc.SyntheticTransactions.WebTaskOutput
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Diagnosis Property string Diagnosis {get;}
Error Property string Error {get;}
Latency Property timespan Latency {get;}
Result Property Microsoft.Rtc.SyntheticTransactions.ResultStatus Result {get;}
TargetFqdn Property string TargetFqdn {get;}
TargetUri Property string TargetUri {get;}
WorkflowLogger Property Microsoft.Rtc.SyntheticTransactions.Logging.SyntheticTransactionsWorkf...
$test."Target Uri"
- должно работать нормально; вы можете вставить (обновить вопрос) вывод из$test | gm
? - person 4c74356b41   schedule 04.03.2017Write-Output ($test."Target Uri")
или _2 _... вывод из$test | gm
был добавлен в мою исходную публикацию. - person BastianW   schedule 04.03.2017,$test | gm
или$test | gm
, как уже было сказано выше. Мне кажется, что это то же самое. @Ansgar Не понял твою точку зрения. Весь код упомянут выше. Здесь нет ничего особенного или трансформации. Просто откройте PowerShell и запустите команду. - person BastianW   schedule 04.03.2017,$test | gm
, но я уже обновил свой вопрос здесь с помощью$test | gm
, и нет никакой разницы между вашей командой и командой из @ 4c74356b41. И да,$test.result
работает и показывает результат, как написано в моем вопросе, поэтому$test
не может быть пустым. - person BastianW   schedule 04.03.2017$test | gm
и вашим,$test | gm
, иначе я его не видел. Вывод$test | gm
вставлен в исходный вопрос. - person BastianW   schedule 04.03.2017$test | gm
. Вы должны четко видеть, что в именах свойств фактически нет пробела. Это должно быть$test.TargetUri
, а не$test.'Target Uri'
. - person user4003407   schedule 04.03.2017$test | gm
... довольно странно ... @ 4c74356b41, поскольку вы, когда первый попытался указать на$test | gm
, которые привели к решению, вы можете дать ответ? - person BastianW   schedule 04.03.2017