我很难忽略从基类继承的类的属性。
Mapper.CreateMap<FormViewModelBase, EntityBase>()
.Include<FormViewModel, Entity>()
.ForMember(x => x.Id, o => o.Ignore());
Mapper.CreateMap<FormViewModel, Entity>();
这里唯一要注意的是基类的属性是String,派生类的属性是Int32。
无论如何,当我尝试将 FormViewModel 的实例映射到 Entity 时,Entity 类上基于 String 的 Id 属性始终设置为 FormViewModel 中的 Int 值,即使我已指定忽略它。
我在 FormViewModel 和 Entity 上为 Id 使用不同类型的原因是我在 Web 应用程序中使用 RavenDB,并且可以通过字符串或 int Id 加载对象。在客户端,首选 Int Id,因为标准 Raven 基于字符串的 ID 在生成链接时效果不佳。
谁能告诉我这里有什么问题?