abp框架 设置GC模式

在对应 api项目文件名下的有一个runtimeconfig.json文件
例如ProjectName.HttpApi.Host.runtimeconfig.json,如果看不到 就查看 所有文件,如果全局查会出现多个文件,确定修改的是对的。
在json文件中设置configProperties中的System.GC.Server,如果 是true,默认是服务器模式,设置为false默认是Workstation模式。

检查GC模式:
在module中添加

public override void PreConfigureServices(ServiceConfigurationContext context)
{
    // var configuration = context.Services.GetConfiguration();
    // 获取当前的垃圾回收器
    var currentGcMode = GCSettings.IsServerGC ? "Server" : "Workstation";
    Log.Information("当前垃圾回收模式:" + currentGcMode);
    // Configure<runtimeop>(configuration.GetSection("GCSettings"));
    // 设置垃圾回收模式为服务器模式
    // GCSettings.IsServerGC = true;
    // Log.Information("已将垃圾回收模式设置为服务器模式");
}

在PreConfigureServices中打印日志就可以看到GC模式的变化。

ABP框架集成EPPLus导出大批量数据,优化以下代码,同时var data = await GetBreakdownExportDataAsync(input);如果查询结果是207696条记录,怎么优化?:public async Task ExportDataToOldExcelAsync(GetBreakdownDto input) { var exportOlds = new List<ExportOldBreakdownDto>(); var data = await GetBreakdownExportDataAsync(input); foreach (var entity in data) { var exportData = new ExportOldBreakdownDto { LineName = entity.Breakdown.LineName, EquipmentName = entity.Breakdown.EquipmentName, BreakdownStartTimeStr = entity.Breakdown.BreakdownStartTimeStr, BreakdownEndTimeStr = entity.Breakdown.BreakdownEndTimeStr, StartTimeStr = entity.Breakdown.StartTimeStr, EndTimeStr = entity.Breakdown.EndTimeStr, BreakdownDuration = CalculateTimeDifferenceInMinutes(entity.Breakdown.BreakdownStartTimeStr, entity.Breakdown.BreakdownEndTimeStr), MaintenanceDuration = CalculateTimeDifferenceInMinutes(entity.Breakdown.StartTimeStr, entity.Breakdown.EndTimeStr), LineleaderName = null, TechnicianName = entity.ActivityPerson.Name, FaultDescription = CombineFields(entity.Breakdown.BreakdownCategoryName, entity.Breakdown.ErrorMessage, entity.Breakdown.BreakdownDescription), MaintenanceRecord = entity.LastMeasureRecord == null? null: $"{entity.LastMeasureRecord.CauseAnalysis}-{entity.LastMeasureRecord.Measure}", IPQCName = null,//TODO 如何获取IPQC Status = entity.Breakdown.Status, OrganizationCode = entity.Breakdown.OrganizationCode, BreakdownCategoryMajor = entity.Breakdown.BreakdownCategoryMajor }; exportOlds.Add(exportData); } // 列配置 var excelBytes = ExcelExportUtility.ExportToExcel<ExportOldBreakdownDto>(exportOlds); // 通过 IHttpContextAccessor 获取 HttpContext var httpContext = _httpContextAccessor.HttpContext; if (httpContext != null) { var response = httpContext.Response; response.Clear(); response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; response.Headers.Add("Content-Disposition", "attachment; filename=ExportedData.xlsx"); await response.Body.WriteAsync(excelBytes, 0, excelBytes.Length); } }
03-19
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雨中深巷的油纸伞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值