Мой командлет пытается получить значения из трубопровода, но при запуске, я получил ошибку говоря:PowerShell Командлет: выражение должно быть читаемым
трубопровода intput не может быть обработан, так как значение по умолчанию для параметра «Legalentity» не может быть retrived. Исключение получение «Legalentity»: выражение должно быть читаемым Имя параметра: выражение
, и я понятия не имею, что производит эту ошибку ..
Спасибо за любую помощь! Код ниже ..
[Cmdlet(VerbsCommon.Get, "Deals")]
public partial class GetDealCmdlet : InsightBaseCmdlet
{
private List<Object> _legalentities = new List<Object>();
[Parameter(Position = 0, Mandatory = true, ValueFromPipeline = true, ValueFromPipelineByPropertyName = true)]
public List<Object> Legalentity { set { _legalentities = value; } }
protected override void ProcessRecord() {...}
}
и использование:
Search-Deals xxx | Get-Deals
, где поиск-предложения являются:
...
protected override void ProcessRecord()
{
foreach (PSObject in List<PSObject>)
{
....
writeObject(PSObject);
}
}
Возможный дубликат [cmdlet говорит, что параметр не может быть получен: выражение должно быть доступно для чтения] (http://stackoverflow.com/questions/15888909/cmdlet-says-parameter-cannot-be-retrieved-expression-must-be- удобочитаемый) – Troyen