在《从零开始进行ABP项目开发》系列文章中,使用的是Abp 3.6 (.Net Core 2.x),最近把这个项目升级到5.0(.Net Core 3.x),发现原来的代码无法编译通过,还有很多警告提示,这里总结一下。
测试模块中初始化内存数据库方式
在老的版本中,初始化内存数据库时不需要指定数据库的名称,新版本必须指定。
老版本:
builder.UseInMemoryDatabase().UseInternalServiceProvider(serviceProvider);
新版本
builder.UseInMemoryDatabase("mytest").UseInternalServiceProvider(serviceProvider);
Swagger使用rc版本
由于Swashbuckle.AspNetCore的最稳定版本4.0.1不支持.Net Core 3.x,所有需要使用5.0.0-rc4版本,正式版本发布后需要更新并测试。
AutoMapper的变化
原来的MapTo过时,需要使用ObjectMapper替换。修改后的代码如下:
return new PagedResultDto<PoetDto>
{
TotalCount = count,
Items = ObjectMapper.Map<List<PoetDto>>(lst) // lst.MapTo<List<PoetDto>>()
};