Beispiel #1
0
        /// <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" });
            }
        }
Beispiel #2
0
        /// <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"
            });
        }