Я ищу руководство высокого уровня о том, как создать многоуровневое решение, которое будет генерировать и передавать содержимое большого текстового файла в веб-приложение Angular 6 через контроллеры .NET MVC. Система состоит из сервисного уровня Web API, веб-приложения .NET MVC и внешнего интерфейса Angular.
Поскольку для генерации файлов потребуется некоторое время, я хочу сделать это асинхронно по всему стеку, то есть записать каждую строку и передать ее через стек клиенту браузера по мере его появления, а не ждать, пока весь файл, который будет создан на сервере перед отправкой на контроллер.
Сервисный уровень сгенерирует файл и выведет его с помощью метода контроллера. Этот метод контроллера вызывается методом контроллера в веб-приложении, которое, в свою очередь, вызывается службой Angular. В конечном счете, я хочу, чтобы файл попал на рабочий стол пользователя.
Содержимое файла будет сгенерировано аналогично следующему (это синхронная версия). numberOfRows может быть в миллионах, поэтому для генерации файлов может потребоваться некоторое время.
public string GenerateFile(int numberOfRows)
{
StringBuilder output = new StringBuilder();
for (int i = 0; i <= numberOfRows; i++)
{
output.Append("Row " + i.ToString() + "\r\n");
}
return output.ToString();
}
Заранее спасибо за помощь!