Я хочу запустить подпроцесс и посмотреть его перенаправленный вывод.Это не проблема для меня в C #, но я пытаюсь понять RX, поэтому игра начинается ... У меня есть метод статического расширения для процесса, который выглядит следующим образом:
public static IObservable<IEvent<DataReceivedEventArgs>> GetOutput(this Process that)
{
return Observable.FromEvent<DataReceivedEventArgs>(that, "OutputDataReceived");
}
Я создаю наблюдаемуюи подпишитесь на это так:
Process p = ........
var outObs = p.GetOutput();
var outSub = outObs.Subscribe(data => Console.WriteLine(data));
Это не совсем неправильно, но я получаю:
System.Collections.Generic.Event`1[System.Diagnostics.DataReceivedEventArgs]
, пока я ожидаю получить строки: - (
Так что, я думаю, мой метод расширения возвращает неправильный тип. Было бы очень хорошо, если бы кто-то мог объяснить мне, что не так с моей сигнатурой методов расширения.
Большое спасибо, ++ mabra