/// <summary> /// Возвращение всех строк в потоке. /// </summary> public async override Task FetchDataAsStream(TaskDataRequest request, IServerStreamWriter <TaskDataReply> responseStream, ServerCallContext context) { try { ICollection <string> fileData = await this._data.ReadLines(request.AcademicDisciplineId, request.TaskId); foreach (var fileLine in fileData) { await responseStream.WriteAsync(new TaskDataReply { Data = fileLine, DataFormat = "string" }); } } catch (System.Exception ex) { this._logger.LogError(ex, "Something is wrong while reading a file!"); await responseStream.WriteAsync(new TaskDataReply { Data = "ERROR" }); } }
/// <summary> /// Возвращение всех данных. /// </summary> public async override Task <TaskDataReply> FetchData(TaskDataRequest request, ServerCallContext context) { try { string fileData = await this._data.Read(request.AcademicDisciplineId, request.TaskId); return(new TaskDataReply { Data = fileData, DataFormat = ".txt" }); } catch (System.Exception ex) { this._logger.LogError(ex, "Something is wrong while reading a file!"); } return(new TaskDataReply { Data = "ERROR" }); }