Я пытался создать клиент WCF, следуя инструкциям здесь:
Выполнение односторонней операции службы wcf из powershell
Вот фрагмент кода, который ломается
$contractDescription = [System.ServiceModel.Description.ContractDescription]::GetContract([Iinterface])
$serviceEndpoint = New-Object System.ServiceModel.Description.ServiceEndpoint $contractDescription
$channelFactory = New-Object "System.ServiceModel.ChannelFactory``1[Iinterface]" $serviceEndpoint
Мой интерфейс хранится в отдельной сборке, которая у меня есть Add-Typed. Что меня удивляет, так это то, что это
$contractDescription = [System.ServiceModel.Description.ContractDescription]::GetContract([Iinterface])
работает просто отлично, но
$channelFactory = New-Object "System.ServiceModel.ChannelFactory``1[Iinterface]" $serviceEndpoint
не работает с:
New-Object: не удается найти тип [System.ServiceModel.ChannelFactory`1 [Iinterface]]: убедитесь, что сборка, содержащая этот тип, загружена.
В C: \ Users \ amarchuk \ AppData \ Local \ Temp \ 1 \ bbc2b1ab-fe3a-4982-a561-2bfe926b7362.ps1: 29 char: 29
+ $ channelFactory = New-Object <<<< "System.ServiceModel.ChannelFactory``1 [Iinterface]" $ serviceEndpoint
+ CategoryInfo: InvalidType: (:) [New-Object], PSArgumentException
+ FullyQualifiedErrorId: TypeNotFound, Microsoft.PowerShell.Commands.NewObjectCommand </p>
Я испортил синтаксис вокруг дженериков?
Благодаря.