我有两个枚举:一个是仅后端的,第二个是版本控制的,并向API使用者公开。
后端版本:
class Category < ActiveRecord
attr_accessor :name
has_many :posts
end
API公开版本
public enum SomeEnum
{
One,
Two,
Three
}
我正在使用Automapper 5.2.0这样将后端枚举映射到api枚举:
public enum SomeEnum
{
One,
Two
}
我需要忽略SomeEnum。现在是三个。所以我将代码更改为:
CreateMap<SomeEnum, CommonEnums.SomeEnum>()
现在我有错误:
AutoMapper.AutoMapperConfigurationException:自定义配置 类型只支持顶级个人成员。
为什么?我该如何解决?
答案 0 :(得分:0)
尝试一下:
CreateMap<SomeEnum, CommonEnums.SomeEnum>()
.ForMember(dest=> dest.Three, opt => opt.Ignore());
,如果您使用的是WCF,则为双方的枚举字段分配编号:
public enum SomeEnum
{
One = 1,
Two = 2,
Three = 3
}
public enum SomeEnum
{
One = 1,
Two = 2
}