示例#1
0
        public virtual async Task <IActionResult> ExportAsync(ExportKind kind, string kindName)
        {
            var modelConfiguration = Request.HttpContext.RequestServices.GetService <IEdmModelAccessor>().EdmModel.ModelConfiguration();
            var queryable          = await GetEntitySetQuery();

            return(await ExportAsync(kind, kindName, queryable, modelConfiguration));
        }
示例#2
0
 public virtual async Task <IActionResult> ExportAsync(ExportKind kind, string kindName, IQueryable <T> queryable,
                                                       ModelConfiguration modelConfiguration)
 {
     switch (kind)
     {
     case ExportKind.Excel:
         return(ExcelFile(await GetExcelReportAsync(queryable, modelConfiguration)));
     }
     return(null);
 }
示例#3
0
        public virtual bool CanHandleExportRequest(ExportKind kind, string kindName)
        {
            switch (kind)
            {
            case ExportKind.Excel:
                return(true);
            }

            return(false);
        }
 public static bool IsKnownExportRequest(this HttpRequest request, out ExportKind kind)
 {
     if (request.IsExportRequest(out kind, out var name))
     {
         if (kind == ExportKind.Unknown)
         {
             return(false);
         }
     }
     return(true);
 }
        public static bool IsExportRequest(this HttpRequest request, out ExportKind kind, out string kindName)
        {
            kind = ExportKind.Unknown;
            if (request.Query.ContainsKey("export"))
            {
                var exportFormat = request.Query["export"].ToString().ToLower();
                if (!string.IsNullOrWhiteSpace(exportFormat))
                {
                    kindName = exportFormat.Trim();
                    switch (kindName)
                    {
                    case "excel":
                        kind = ExportKind.Excel;
                        break;
                    }
                    return(true);
                }
            }

            kindName = null;
            return(false);
        }
 public static string Resolve(ExportKind exportKind) => Dictionary[exportKind];