文件导入与导出
一、文件导入
1、安装MiniExcel的NuGet程序包
2、创建API接口
3、获取上传文件信息
var formFile = HttpContext.Request.Form.Files[0];
4、开辟文件流空间
MemoryStream stream = new MemoryStream();
5、将获取到的文件信息存放到文件流中
formFile.CopyTo(stream);
6、将文件流中的信息转换成对应的实体信息
var list = stream.Query<RoleInfo>();
7、将实体信息保存到数据库
_roleRepository.AddRangeEntity(list.ToList());
_roleRepository.SaveChanges()
二、文件导出
1、安装MiniExcel的NuGet程序包
2、创建接口
3、获取数据库中所有信息
List<RoleInfo>? list = _roleService.GetAll().ToList();
4、内存流开辟空间
MemoryStreamstream = new MemoryStream();
5、将数据写入内存流,从第0位开始写
Stream.SaveAs(list);
Stream.Seek(0, SeekOrigin.Begin);
6、返回内存流
Return new FileStreamResult(memoryStream,"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet(文件的格式为Excel格式)") { FileDownloadName = "RoleMessage.xlsx(导出后的文件名)" };