【发布时间】:2021-09-13 17:17:20
【问题描述】:
我有以下忽略 Id 字段的简单类和映射。
我注意到的是,当我从 Eto/Dto 映射到实体时,.Ignore() 不起作用,我不知道它背后的原因。
我使用的是最新的 ABP 4.4。
public class Country : Entity<string>
{
public Country() {}
public Country(string id) { Id = id; }
}
public class CountryDto : EntityDto<string> { }
CreateMap<Country, CountryDto>().Ignore(x => x.Id); // id ignored
CreateMap<CountryDto, Country>().Ignore(x => x.Id); // id not ignored
在我的测试中映射代码:
var country1 = new Country("XX");
var dto1 = ObjectMapper.Map<Country, CountryDto>(country1);
var dto2 = new CountryDto() { Id = "XX" };
var country2 = ObjectMapper.Map<CountryDto, Country>(dto2);
我也尝试过忽略正常的 AutoMapper 长格式,而不是 ABP 的 Ignore 扩展名。
【问题讨论】:
标签: c# automapper abp