コード例 #1
0
        public async Task <IActionResult> DoExecuteSql_Select_Export([FromForm] ExecuteSqlDto request)
        {
            ExecuteResult executeResult = await _sqlOnlineApplication.ExecuteSql_Select_Export(request, AdminDto.Id);

            if (executeResult.IsException)
            {
                return(Error(executeResult));
            }
            if (request.ExportType == 0)   //txt
            {
                var txt = BuildText(executeResult);
                return(File(Encoding.UTF8.GetBytes(txt), "text/plain", $"Export_{DateTime.Now.ToString("yyyyMMddHHmmss")}.txt"));
            }
            else if (request.ExportType == 1)     //excel
            {
                var bytes = BuildExcel(executeResult);
                return(File(bytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", $"Export_{DateTime.Now.ToString("yyyyMMddHHmmss")}.xlsx"));
            }
            else if (request.ExportType == 2)     //csv
            {
                var txt = BuildCsv(executeResult);
                return(File(Encoding.GetEncoding("GBK").GetBytes(txt), "text/csv", $"Export_{DateTime.Now.ToString("yyyyMMddHHmmss")}.csv"));
            }
            else if (request.ExportType == 3)     //json
            {
                var txt = BuildJson(executeResult);
                return(File(Encoding.UTF8.GetBytes(txt), "text/json", $"Export_{DateTime.Now.ToString("yyyyMMddHHmmss")}.json"));
            }
            else if (request.ExportType == 4)     //xml
            {
                var bytes = BuildXml(executeResult);
                return(File(bytes, "application/xHTML+XML", $"Export_{DateTime.Now.ToString("yyyyMMddHHmmss")}.xml"));
            }
            return(Success(executeResult));
        }