У меня есть Quotation
модель, содержащая свойство типа Customer
.Я хочу заполнить свойство Customer
с помощью automapper, когда я получаю цитату из контекста с помощью следующего кода:
var quotation = context.Quotation.Include("Customer").Single(q => q.Id == 1);
var quotationDetailsViewModel = mapper.Map<QuotationDetailsViewModel>(quotation);
В настоящее время мой quotation.Customer
заполнен, но он не сопоставляется с соответствующими полями вquotationDetailsViewModel
.Я знаю, что мне придется дать некоторое сопоставление, но я не понимаю, где и как это сделать.
Вот мои классы модели и модели представления:
public class Quotation
{
public long Id {get; set;}
public long CustomerId {get; set;}
public Customer Customer {get; set;}
public string Status {get; set;}
}
public class Customer
{
public long Id {get; set;}
public string Name {get; set;}
public string Address {get; set;}
}
public class QuotationDetailsViewModel
{
public long QuotationId {get; set;}
public long CustomerId {get; set;}
public string Status {get; set;} //This is quotation status
public string Name {get; set;} //This is customer name
}
Вот мой автомат MappingProfile.cs
public class MappingProfile : Profile
{
public MappingProfile()
{
CreateMap<QuotationDetailsViewModel, Quotation>().ReverseMap();
CreateMap<QuotationDetailsViewModel, Customer>().ReverseMap();
}
}
Я использую .net MVC Core 2.2 с AutoMapper.Extensions.Microsoft.DependencyInjection
версия 6.1.1