В Angular-проекте, основанном на ASP.NET MVC и EF, у меня есть следующие объекты, как показано ниже:
Примечание. Если я не добавлю вложение, ошибки не возникнет. Но добавление файла, вызывающего эту ошибку во время отображения.
Ticket.cs:
public class Ticket
{
[Key]
public int Id { get; set; }
public string Summary { get; set; }
public string Description { get; set; }
//code omitted for brevity
public virtual ICollection<FileAttachment> FileAttachments { get; set; }
}
TicketViewModel.cs:
public class TicketViewModel
{
public int Id { get; set; }
//code omitted for brevity
public virtual ICollection<FileAttachmentViewModel> FileAttachments { get; set; }
}
FileAttachmentViewModel.cs:
public class FileAttachmentViewModel
{
public int Id { get; set; }
public int TicketId { get; set; }
public string FileName { get; set; }
public byte[] FileData { get; set; }
//code omitted for brevity
public virtual Ticket Ticket { get; set; }
}
Вот отображение и метод Save, где я сталкиваюсь с ошибкой "Типы отображения. Типы отображения: TicketViewModel -> Ticket ..." ошибка.
Service.cs:
public TicketViewModel Save(TicketViewModel model)
{
//here I encounter the error while mapping TicketViewModel to Ticket
var record = model.MapEntity<Ticket>();
//code omitted for brevity
}
Mapping.cs:
CreateMap<Ticket, TicketViewModel>();
CreateMap<TicketViewModel, Ticket>()
.ForMember(dest => dest.FileAttachments, opts => opts.MapFrom(src => src.FileAttachments);
CreateMap<FileAttachment, FileAttachmentViewModel>();
CreateMap<FileAttachmentViewModel, FileAttachment>();
Буду признателен за любую помощь ...