A execução de um comando powershell em erros de C # com "Não é possível chamar esta função porque o host atual não a implementa"

Eu tenho um aplicativo que eu uso para executar comandos do Exchange Powershell dentro do código C # como abaixo. Este é um exemplo das linhas relevantes que eu uso para executar o comando powershell.

            RunspaceConfiguration rsConfig = RunspaceConfiguration.Create();
        PSSnapInException snapInException = null;

        //load Exchange shell
        rsConfig.AddPSSnapIn("Microsoft.Exchange.Management.PowerShell.E2010", out snapInException); 
        Runspace runSpace = RunspaceFactory.CreateRunspace(rsConfig);

        //open runspace
        runSpace.Open();

        //setup pipeline
        Pipeline pipeLine = runSpace.CreatePipeline();
        String sScript = "get-mailbox -identity 'rj'";

        //add script to pipeline
        pipeLine.Commands.AddScript(sScript);

        //run the script
        pipeLine.Invoke();
        pipeLine.Dispose();

Esse código funciona perfeitamente em todos os casos até agora. o script que estou tentando executar em vez do acima é definir o RetentionPolicy para uma caixa de correio. O script que estou tentando executar se parece com o seguinte:

Set-Mailbox -Identity 'rj' -RetentionPolicy 'Política de retenção de campus principal'

Quando executo isso no próprio PowerShell, ele funciona perfeitamente, mas quando tento executá-lo usando o código abaixo, recebo o erro "Não é possível invocar essa função porque o host atual não a implementa".

Com esse erro, quase parece que o comando executado em C # não pode executar o comando RetentionPolicy, mas isso não faz muito sentido. Eu pesquisei isso no Google e tentei de tudo, mas não tive sorte.

Se alguém souber por que isso está acontecendo, seria muito útil.