Как заставить процесс подождать, пока он не будет завершен до нового запросаC#

Место общения программистов C#
Anonymous
Как заставить процесс подождать, пока он не будет завершен до нового запроса

Сообщение Anonymous »

Я разрабатываю процесс для получения ввода из объекта DB и преобразования данных в экспорт файла Excel. Я использую инструмент NPOI для того же самого. Первый процесс разрывается, и процесс продолжается по новому запросу. Обратите внимание, что я новичок в этом и не совсем уверен, что то, что я сделал, ожидает каждого процесса. Пожалуйста, поправьте меня, если я ошибаюсь. < /P>
byte[] IExportTranslator.CreateExcelExportFile(CalSetupVM calSetupVM, ExportCriteriaVM exportCriteriaVM, string name)
{
return Task.Run(async () => await CreateAsynExportFile(calendarSetupVM, ganttExportCriteriaVM, filterName)).Result;
}

public async Task CreateAsynExportFile(CalSetupVM calSetupVM, ExportCriteriaVM exportCriteriaVM, string name)
{
return await Task.Run(() => doSomeWork(calSetupVM, exportCriteriaVM, name));
}

private byte[] doSomeWork(CalSetupVM calSetupVM, ExportCriteriaVM exportCriteriaVM, string name)
{
//doSomThing...
return byte[...];
}
< /code>
Я сделал приведенный выше код на основе некоторых предложений на форумах. и то, что я прочитал вокруг Asyn/ожидаю. и так далее, чтобы стоять в очереди и обрабатывать один за другим.

Подробнее здесь: https://stackoverflow.com/questions/796 ... ew-request

Вернуться в «C#»