c# - PowerShell ParameterBindingException -


i building application automate exchange 2010 operations asp.net mvc website.

right now, i've run parameterbindingexception when try invoke new-addresslist command.

i trying create following call (which works):

new-addresslist -name "7 al" -recipientcontainer "mydomain.local/customers/7" -includedrecipients 'allrecipients' -container '\' -displayname "7 al" 

i doing following:

var newaddresslist = new command("new-addresslist"); newaddresslist.parameters.add("name", "7 al"); newaddresslist.parameters.add("recipientcontainer", "mydomain.local/customers/7"); newaddresslist.parameters.add("includedrecipients", "allrecipients"); newaddresslist.parameters.add("container", @"\"); newaddresslist.parameters.add("displayname", "7 al"); commandslist.add(newaddresslist); 

this commandlist provided pipeline invoke, giving me following error:

new-addresslist: input object cannot bound parameters command either because command not take pipeline input or input , properties not match of parameters take pipeline input.

  • categoryinfo: invalidargument: (7:psobject) [new-addresslist], parameterbindingexception
  • fullyqualifiederrorid: inputobjectnotbound,microsoft.exchange.management.systemconfigurationtasks.newaddresslist

any clues might cause this?

output trace-command gives:

ps c:\users\ext_kefu> trace-command -name parameterbinding -expression {new-addresslist -name "7 al" -recipientcontainer "mydomain.local/customers/7" -includedrecipients 'allrecipients' -container '\' -displayname "7 al"} -pshost debug: parameterbinding information: 0 : bind named cmd line args [new-addresslist] debug: parameterbinding information: 0 :     bind arg [7 al] parameter [name] debug: parameterbinding information: 0 :         coerce arg [system.string] debug: parameterbinding information: 0 :             parameter , arg types same, no coercion needed. debug: parameterbinding information: 0 :         bind arg [7 al] param [name] successful debug: parameterbinding information: 0 :     bind arg [mydomain.local/customers/7] parameter [recipientcontainer] debug: parameterbinding information: 0 :         coerce arg [microsoft.exchange.configuration.tasks.organizationalunitidparameter] debug: parameterbinding information: 0 :             trying convert argument value system.string microsoft.exchange.configuration.tasks.organizationalunitidparameter debug: parameterbinding information: 0 :             convert arg type param type using languageprimitives.convertto debug: parameterbinding information: 0 :             convert successful using languageprimitives.convertto: [mydomain.local/customers/7] debug: parameterbinding information: 0 :         bind arg [mydomain.local/customers/7] param [recipientcontainer] successful debug: parameterbinding information: 0 :     bind arg [allrecipients] parameter [includedrecipients] debug: parameterbinding information: 0 :         coerce arg [system.nullable[microsoft.exchange.data.directory.recipient.wellknownrecipienttype]] debug: parameterbinding information: 0 :             trying convert argument value system.string system.nullable[microsoft.exchange.data.directory.recipient.wellknownrecipienttype] debug: parameterbinding information: 0 :             convert arg type param type using languageprimitives.convertto debug: parameterbinding information: 0 :             convert successful using languageprimitives.convertto: [allrecipients] debug: parameterbinding information: 0 :         bind arg [allrecipients] param [includedrecipients] successful debug: parameterbinding information: 0 :     bind arg [\] parameter [container] debug: parameterbinding information: 0 :         coerce arg [microsoft.exchange.configuration.tasks.addresslistidparameter] debug: parameterbinding information: 0 :             trying convert argument value system.string microsoft.exchange.configuration.tasks.addresslistidparameter debug: parameterbinding information: 0 :             convert arg type param type using languageprimitives.convertto debug: parameterbinding information: 0 :             convert successful using languageprimitives.convertto: [\] debug: parameterbinding information: 0 :         bind arg [\] param [container] successful debug: parameterbinding information: 0 :     bind arg [7 al] parameter [displayname] debug: parameterbinding information: 0 :         coerce arg [system.string] debug: parameterbinding information: 0 :             parameter , arg types same, no coercion needed. debug: parameterbinding information: 0 :         bind arg [7 al] param [displayname] successful debug: parameterbinding information: 0 : bind positional cmd line args [new-addresslist] debug: parameterbinding information: 0 : mandatory parameter check on cmdlet [new-addresslist] debug: parameterbinding information: 0 : calling beginprocessing debug: parameterbinding information: 0 : calling endprocessing  name                      displayname               recipientfilter ----                      -----------               --------------- 7 al                      7 al                      alias -ne $null 

i found each command must invoked separately, since not related. question arose misunderstanding of concept of powershell pipelines.


Comments