Я использую AutoMapper 8 в проекте и хочу использовать распознаватель, как показано ниже.Проблема, я получил это сообщение об ошибке:
MissingMethodException: для этого объекта не определен конструктор без параметров.
, и я не знаю, пропустил ли я что-то здесь.
public class ExcelClientProfile : Profile
{
public ExcelClientProfile()
{
CreateMap<Ticket, ExcelClient>()
...
.ForMember(d => d.FormModel, s => s.MapFrom<FormBuilderWithAnswerResolver>());
}
}
public class FormBuilderWithAnswerResolver : IValueResolver<Ticket, ExcelClient, FormModel>
{
private IFormBuilderService _formBuilderService;
public FormBuilderWithAnswerResolver(IFormBuilderService formBuilderService)
{
_formBuilderService = formBuilderService;
}
public FormModel Resolve(Ticket source, ExcelClient destination, FormModel destMember, ResolutionContext context)
{
return _formBuilderService.GetFormBuilderWithAnswersExcel(source);
}
}
Знаете, как я могу сделать эту работу?
Спасибо,
Дэвид
Stacktrace
Произошло необработанное исключение при обработке запроса.MissingMethodException: для этого объекта не определен конструктор без параметров.System.Models.Ticket -> Service.Models.TicketOrderView.ExcelClient
Тип Конфигурация карты: Билет -> ExcelClient Core.Models.Ticket -> Service.Models.TicketOrderView.ExcelClient
Элемент назначения: FormModellambda_method (Closure, IQueryable, ICollection, ResolutionContext)
AutoMapperMappingException: типы сопоставления ошибок.
Типы сопоставления: IQueryable 1 -> ICollection
1 System.Linq.IQueryable 1[[Core.Models.Ticket, Core, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null]] ->
System.Collections.Generic.ICollection
1 [[Service.Models.TicketOrderView.ExcelClient, Сервис, Версия = 1.0.0.0, Культура = нейтральная, PublicKeyToken = null]]
А также:
public class Ticket : Entity
{
public int Id { get; set; }
...
public virtual FormBuilder FormBuilder { get; set; }
public Ticket()
{
}
public object Clone()
{
return this.MemberwiseClone();
}
}
public class ExcelClient
{
...
public virtual FormModel FormModel { get; set; }
public ExcelClient()
{
}
}