Я, наверное, просмотрел сотни статей, связанных с остановкой StandardOutput ReadtoEnd, но ни одна из них не отвечает на мой конкретный вопрос.
Сценарий, который у меня есть, заключается в том, что я создаю оболочку для стороннего консольного приложения, которое будет использоваться в моем приложении ASP.NET MVC. Я запускаю процесс, передаю ему входную строку (которая является точечным файлом в строковом формате), и приложение возвращает файл (в данном случае pdf).
Файл помещен в стандартный вывод (в соответствии с документами), однако я не могу прочитать данные.
Когда я запускаю консольное приложение вручную, я получаю файл в виде текста в окне вывода, но программа никогда не «выходит». Я должен CTRL + C, чтобы завершить процесс.
Наверное, поэтому мои звонки на
process.StandardOutput.ReadToEnd();
Просто повесить?
Может кто-нибудь пролить немного света на то, что я делаю неправильно. Я хотел бы вернуть файл, полученный в выводе, как byte[]
из моего вызова метода.
Спасибо и извинения, если кажется, что это дубликат.