コード例 #1
0
ファイル: ExcelFileResult.cs プロジェクト: rhw1111/DCEM
        public async Task ExecuteResultAsync(ActionContext context)
        {
            context.HttpContext.Response.ContentType = format;
            context.HttpContext.Response.Headers.Add("Content-disposition", "attachment;filename=" + WebUtility.UrlEncode(fileName));
            byte[] bytes = new byte[1024];
            stream.Position = 0;
            while (true)
            {
                int count = await stream.ReadAsync(bytes, 0, bytes.Length);

                await context.HttpContext.Response.Body.WriteAsync(bytes, 0, count);

                if (count < bytes.Length)
                {
                    break;
                }
            }
            ///log
            Guid guid    = Guid.NewGuid();
            var  message = new SMessage()
            {
                Key  = $"{"Common"}-{"ExcelExportLog"}-{guid}",
                Type = "ExcelExportLog",
                Data = JsonSerializerHelper.Serializer(new { Id = guid, CreateBy = userName, CreateOn = DateTime.UtcNow, FileName = fileName, FileSize = stream.Length, CreateBranch = branchCode }),
                ExpectationExecuteTime = DateTime.UtcNow,
                RetryNumber            = 0,
                IsDead = false
            };
            await message.Add();
        }
コード例 #2
0
ファイル: AppCreateMessage.cs プロジェクト: rhw1111/DCEM
        public async Task Do(SMessageData messageData)
        {
            SMessage message = new SMessage()
            {
                Key  = messageData.Key,
                Type = messageData.Type,
                Data = messageData.Data,
                ExpectationExecuteTime = messageData.ExpectationExecuteTime
            };

            await message.Add();
        }