Below is a barebones class setup for what I'm describing.
public class List
{
public int Id {get;set;}
public RecipientCount RecipientCount {get;set;}
public RecipientCount SomeOtherName {get;set;}
}
public class RecipientCount
{
public int Total {get;set;}
public int Active {get;set;}
}
public class ListDto
{
public int id {get;set;}
public RecipientCountDto recipientCount {get;set;}
public RecipientCountDto someOtherName {get;set;}
}
public class RecipientCountDto
{
public int total {get;set;}
public int active {get;set;}
}
public class AutoMapperConfiguration
{
public void Init(AutoMapper.IConfiguration config)
{
config.CreateMap<RecipientCount,RecipientCountDto>();
}
}
if I attempt to use this it throws a:
The following property on Reachmail.Domain.Component.RecipientCountDto cannot
be mapped:
recipientCount
Add a custom mapping expression, ignore, add a custom resolver, or modify the
destination type Reachmail.Domain.Component.RecipientCount.
Context:
Mapping to property recipientCount of type Reachmail.Domain.Component.RecipientCountDto
from source type Reachmail.Domain.Component.RecipientCount
Mapping to type Reachmail.Web.UI.Controllers.ListDto from source type
Reachmail.Domain.Contacts.Lists.List
Exception of type 'AutoMapper.AutoMapperConfigurationException' was thrown.
If however I remove RecipientProviderDto.recipientProvider it works fine. So it leads me to believe that its the fact that the class name and the property are the same that is causing an issue. Any insights on how to fix it or if its a bug?
try with UpperLetter:
public class ListDto
{
public int Id {get;set;}
public RecipientCountDto RecipientCount {get;set;}
public RecipientCountDto SomeOtherName {get;set;}
}
public class RecipientCountDto
{
public int Total {get;set;}
public int Active {get;set;}
}
Hope it helps.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.