首页 > 数据库 >Abp vnext FreeSql 生成模板,并提供下载模板接口

Abp vnext FreeSql 生成模板,并提供下载模板接口

时间:2024-01-16 17:22:35浏览次数:44  
标签:vnext Task formFile Abp var async public 模板

Dto

Dto设置参考

[ExcelImporter(IsLabelingError = true)]
public class MyDto
{
	[ImporterHeader(Name = "序号")]
	[ExporterHeader(DisplayName = "序号")]
	public int Id { get; set; }
}

Controller

生成模板

[HttpGet("GenerateTemplate")]
//[WrapResult]
[SwaggerOperation(summary: "生成故障配置导入模板", Tags = new[] { "云端-故障告警" })]
public async Task<ActionResult> GenerateExcelImportTemplate()
{
    return await _service.GenerateExcelImportTemplate();
}

下载生成的模板返回数据时,不能使用WrapResult注解,否则不会生成下载链接
返回结果为ActionResult

导入数据

[HttpPost("ImportConfig")]
[WrapResult]
[SwaggerOperation(summary: "导入故障配置信息")]
public async Task ImportEventConfig(IFormFile formFile)
{
     await _service.ImportEventConfig(formFile);
}

Service

导出模板

public async Task<ActionResult> GenerateExcelImportTemplate()
{
    var gg = await Importer.GenerateTemplateBytes<MyDto>();
    var stream = gg.ToStream();

    FileStreamResult resultStream = new FileStreamResult(stream, "application/octet-stream")
   {
       FileDownloadName = "模板.xlsx"
   };

  return resultStream;
}

获取生成的模板的byte数组,并转换成Stream流,将Stream流作为结果返回

导入数据

public async Task ImportEventConfig(IFormFile formFile)
        {
            var fileStream = formFile.OpenReadStream();
            var import = Importer.Import<MyDto>(fileStream);

            var inputs = import.Result.Data.ToList();
            var list = ObjectMapper.Map<List<EventConfigInput>, List<EventConfig>>(inputs);

            await _myDtoRepository.Insert(list);
        }

标签:vnext,Task,formFile,Abp,var,async,public,模板
From: https://www.cnblogs.com/kelvinxiong/p/17968133

相关文章

  • 仿sina个人轻微博html静态网页模板
    一款最新的仿sina个人微博html静态网页模板(轻博客/轻微博/贴吧主页、qq社交空间主题),模板清新简洁、新颖,包含关注、粉丝、人气、个人资料、文章、视频等。比较适合类似爱装扮空间的女生,二次元动漫、插画绘画等内容的个人轻社交博客的模板主题。 模板主题特色:1......
  • 算法模板 v1.2.1.20240116
    算法模板v1.1.1.20240115:之前的历史版本已经不可寻,创建了第一份算法模板。v1.2.1.20240116:删除“编译”-“手动开栈”与“编译”-“手动开O优化”;将“编译”-“CF模板”中的第20行代码cin>>T;注释;删除“读写”及其目录下的内容;删除“图论”-“欧拉图”-“混合图”;删除“图论”-......
  • 16理解函数模板
    理解函数模板模板的意义:对函数类型可以做修改函数模板:boolcompare(Ta,Tb)模板实例化:定义一个模板参数类型,进行一次函数的实例化模板函数:一个函数模板的实例化就是一个模板函数模板类型参数:T模板非类型参数:模板的实参推演:根据实参反推模板参数类型模板的特例化:为函数......
  • 算法模板 v1.1.1
    算法模板编译CF模板#include<bits/stdc++.h>usingnamespacestd;/*====================*/#defineendl"\n"/*====================*/typedeflonglonglnt;/*====================*/voidSolve(void){}/*====================*/intmain(){#ifn......
  • thymeleaf—02—模板
    一、th:fragment模板片段我们可以使用模板,定义一些会经常复用的代码,使用th:fragment定义然后使用th:insert引入这个模板内容,或者使用th:replace进行内容替换;还有一个th:include标签也是引入模板内容,但是这个不推荐了; 除了增加模板,还可以使用th:remove进行模板的删除操作; ......
  • 蓝色时间轴个人博客网页模板代码
    看雪时间轴个人博客模板,女生唯美简洁个人博客静态页面模板,蓝色时间轴个人网页模板,下雪空间个人模板代码1、html页面代码<!doctypehtml><html><head><metacharset="gb2312"><title>看雪时间轴个人博客模板-bokequ.com</title><metaname="keywords"content="蓝色......
  • 20款最好的免费 Bootstrap 后台管理和前端模板
    20款最好的免费Bootstrap后台管理和前端模板 AdminBootstrapTemplatesFreeDownload 1.SBAdmin2Preview | Details&Download2.AdminLitePreview | Details&Download3.DirectorResponsiveAdminTemplateFreePreview | Details&Download4......
  • 产品集成过程模板
    ......
  • 产品集成指南模板
    ......
  • 产品集成计划模板
    ......