automapper缺少类型映射配置或不支持的映射.

Ali*_*hşi 12 .net c# linq asp.net-mvc automapper

错误

Missing type map configuration or unsupported mapping.

Mapping types:
Cities_C391BA93C06F35100522AFBFA8F6BF3823972C9E97D5A49783829A4E90A03F00 -> IEnumerable`1
System.Data.Entity.DynamicProxies.Cities_C391BA93C06F35100522AFBFA8F6BF3823972C9E97D5A49783829A4E90A03F00 -> System.Collections.Generic.IEnumerable`1[[OsosPlus2.Core.DataAccess.Cities, OsosPlus2.Core, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]

Destination path:
CustomerViewModel.Cities.Cities

Source value:
System.Data.Entity.DynamicProxies.Cities_C391BA93C06F35100522AFBFA8F6BF3823972C9E97D5A49783829A4E90A03F00
Run Code Online (Sandbox Code Playgroud)

行动方法:

public ActionResult _EditCustomer(int CustomerId)
{
    Customers customer = entity.Customers.FirstOrDefault(x => x.sno == CustomerId);
    CustomerViewModel customerViewModel = new CustomerViewModel();
    customerViewModel = AutoMapper.Mapper.Map<Customers, CustomerViewModel>(customer);

    customerViewModel.Sectors = entity.Sectors;
    customerViewModel.Cities = entity.Cities;
    customerViewModel.PowerSuppliers = entity.PowerSuppliers;

    return PartialView(customerViewModel);
}
Run Code Online (Sandbox Code Playgroud)

当我从实体获取客户时,我得到了上述错误.为什么我只能在获取后出现此错误?

dov*_*ove 23

看起来您想忽略映射中的Cities,Sectors和PowerSuppliers.

Mapper.CreateMap<Customers, CustomerViewModel>()
                .ForMember(c => c.Sectors, option => option.Ignore())
                .ForMember(c => c.Cities , option => option.Ignore())
                .ForMember(c => c.PowerSuppliers , option => option.Ignore());
Run Code Online (Sandbox Code Playgroud)

我做了这个假设,因为你手动设置它们.当然,您可以为这些创建映射并自动化它们.